2023 모의해킹 실습교육 · 태구 없는 태구팀 · 미니 모의해킹 대회 3등
Linux에 대한 관심을 네트워크·시스템 보안 실습으로 확장하고, 허가된 교육용 사설망 분석과 다양한 보안 도구들의 실사용, 그리고 첫 팀 CTF를 경험하며 보안 공부를 본격적으로 시작한 프로젝트입니다. 첫 팀 CTF에서 팀에 기여하며 대회3등을 이뤄냈습니다.
왜 이 프로젝트를 시작했는가
2023년 1학기 리눅스 프로그래밍 수업에서 Linux를 처음 접했습니다. 명령어와 프로그램 실행을 넘어 운영체제가 프로세스·파일·사용자 권한을 관리하는 구조에 흥미를 느꼈고, 개인 노트북에 가상머신과 Linux 환경을 구성해 수업 밖에서도 기능을 직접 확인했습니다.
Linux를 계속 사용하면서 시스템의 네트워크 통신, 외부 서비스 노출, 사용자와 파일의 권한 구조가 서로 연결되어 있다는 점을 알게 되었습니다. 그러면서 자연스럽게 설정과 구조가 잘못됐을 때 어떤 보안 문제가 생기는지, 또한 공격자의 입장은 어떤지 궁금해졌습니다.
학교에서 운영하는 모의해킹 실습 교육은 이 궁금증을 허가된 환경에서 확인할 기회였습니다. 보안 도구의 사용법만 배우는 것이 아니라 네트워크·시스템·파일·실행파일에 남은 근거를 바탕으로 문제를 찾고 검증하는 흐름을 경험하고자 참여했습니다.
PROJECT OVERVIEW
항목 | 내용 |
기간 | 2023.07.17–2023.08.03 · 주말 제외 14일 |
수행 형태 | 강원대학교 빅데이터·융합보안사업단 교육 참여 · 태구 없는 태구팀 팀 프로젝트 |
문제 | 이론과 도구 사용에 머물지 않고, 허가된 환경에서 공격 표면을 식별하고 취약 가능성을 근거로 검증하는 보안 분석 흐름 익히기 |
데이터·대상·환경 | 학교가 제공한 교육용 사설 네트워크와 서버, 가상머신 기반 Linux 실습환경 |
분석·구현 범위 | 환경 구성, 호스트·포트·서비스 탐색, 패킷·파일·실행파일 분석, 공격 기법과 모의침투 실습, 팀 미니 CTF |
결과 | 정보보호 기본교육 이수 · 교육 과정 내 미니 모의해킹 대회 3등 |
*모든 스캐닝과 모의침투는 학교가 제공한 허가된 교육용 사설 네트워크와 서버에서 진행했습니다. 실제 외부 시스템을 대상으로 한 활동은 아닙니다.
핵심 질문 — 서로 다른 보안 도구의 결과를 어떻게 연결해 공격 표면을 좁히고, 잠재적인 취약점과 실제로 검증된 문제를 구분할 것인가?
Project Flow
단계 | 판단 기준 | 산출물·확인 결과 |
1. 실습환경 구성 | 실제 서비스와 분리되어 있고 허가 범위가 명확한가 | 가상머신 기반 Linux 환경과 교육용 분석 범위 |
2. 공격 표면 탐색 | 어떤 호스트가 살아 있고 어떤 포트·서비스가 노출되어 있는가 | 활성 호스트와 열린 포트·서비스 정보 |
3. 근거 분석 | 패킷·파일·실행 흐름에서 어떤 동작을 직접 확인할 수 있는가 | 요청·응답 흐름, 파일 구조, 프로그램 동작에 대한 관찰 |
4. 취약 가능성 검증 | 환경·버전·입력 조건에서 실제 재현되는가 | 교육 범위 안에서 확인한 모의침투 결과와 방어 관점 |
5. 팀 미니 CTF | 제한 시간 안에 분석을 나누고 진행 상황을 공유할 수 있는가 | 태구 없는 태구팀 참가 · 최종 3등 |
ROLE
Cybersecurity Trainee · CTF Solver- 담당 역할: 교육 전 과정의 실습자로 참여해 Linux·가상머신 환경 구성, 사설망 호스트·포트·서비스 탐색, 패킷·파일·실행파일 분석과 교육 범위 내 취약점 검증을 수행했습니다.
- 대회 기여: 미니 모의해킹 대회에서 리버싱·네트워크 분야 문제를 주로 맡아 해결하며 팀의 3등 수상에 기여했습니다.
TECH STACK
Virtual Machine · Nmap · Wireshark · HxD · OllyDbg · Metasploit MY WORK
1. 허가 범위를 먼저 정의하고 분리된 실습환경 구성
실제 서비스에 영향을 주지 않는 가상머신과 학교 제공 사설망에서만 실습했습니다. 분석을 시작하기 전에 대상·권한·목적을 확인하고, 허가된 시스템만 다루는 것을 모의해킹의 첫 조건으로 삼았습니다.
이 과정을 통해 보안 실습의 출발점은 공격 도구가 아니라 명확한 범위와 안전하게 분리된 환경이라는 원칙을 익혔습니다.
2. 사설망의 공격 표면을 단계적으로 좁히기
Nmap으로 학교가 제공한 사설망의 IP 대역을 스캔해 활성 호스트를 찾고, 각 호스트에서 열린 포트와 동작 중인 서비스를 확인했습니다. 처음부터 취약점을 시도하기보다 호스트 → 포트 → 서비스 → 검증할 조건의 순서로 분석 범위를 좁혔습니다.
단계 | 확인한 내용 | 판단 |
호스트 탐색 | 사설망에서 응답하는 활성 호스트 확인 | 분석할 대상을 먼저 식별 |
포트·서비스 확인 | 열린 포트와 동작 중인 서비스 확인 | 외부에 노출된 기능을 공격 표면으로 분류 |
조건 검토 | 서비스 정보와 실습 조건 확인 | 스캔 결과와 실제 취약점을 구분 |
재현 확인 | 교육이 허용한 범위에서 동작 여부 확인 | 조건이 충족되어 재현된 문제만 검증 결과로 판단 |
이 과정에서 스캐닝 결과는 취약점의 증명이 아니라 추가로 확인할 대상을 선별하는 정보라는 점을 배웠습니다. 서비스가 노출되어 있거나 알려진 취약점과 관련되어 있더라도, 환경·버전·입력 조건이 맞는지 확인해야 실제 문제로 판단할 수 있었습니다.
3. 시스템의 여러 계층에서 분석 근거 확인
특정 도구 하나를 깊게 숙련하기보다 시스템의 서로 다른 계층에서 어떤 증거를 볼 수 있는지 경험했습니다.
분야 | 도구·기법 | 확인한 내용 |
시스템 환경 | Linux, 가상머신 | 실제 시스템과 분리된 환경을 구성하고 허가 범위를 지키는 방법 |
패킷 분석 | Wireshark, TCP/IP, MITM | 통신 흐름과 중간자 공격의 원리 |
파일 분석 | HxD, File Signature, Steganography | 파일을 바이트 단위로 확인하고 형식과 숨겨진 정보를 찾는 기초 |
실행파일 분석 | OllyDbg | 명령 흐름과 레지스터·메모리 변화를 따라 프로그램 동작을 파악하는 기초 |
사용자 대상 공격 | Phishing, Pharming | 시스템뿐 아니라 사용자의 판단과 접속 경로도 공격 대상이 될 수 있음 |
공개정보 수집 | OSINT 기초 | 공개정보를 조합해 대상 구조와 분석 범위를 좁히는 방법 |
Wireshark는 네트워크의 통신 흐름을, HxD는 파일의 바이트 구조를, OllyDbg는 실행 중인 프로그램의 내부 동작을 확인하는 데 사용했습니다. 또한 Phishing·Pharming과 OSINT 실습을 통해 기술적인 취약점뿐 아니라 사용자의 판단과 공개된 정보도 공격에 활용될 수 있다는 점을 배웠습니다.
분석 대상과 도구는 서로 달랐지만, 공통적인 목적은 추측에 의존하지 않고 관찰 가능한 근거를 통해 시스템의 동작과 공격 가능성을 이해하는 것이었습니다. 즉, 분석 대상에 따라 어떤 근거를 확인해야 하는지 구분하는 기초를 익혔습니다.
4. 첫 팀 CTF에서 문제 해결과 협업 방식 검증
교육 마지막에 태구 없는 태구팀으로 미니 모의해킹 대회에 참가했습니다. 첫 CTF였기 때문에 분야별 역할을 미리 정하지 않고, 팀원 모두가 각자 문제를 분석하며 해결 가능한 문제를 찾았습니다.
여러 가능성을 동시에 확인할 수 있었지만, 같은 문제를 중복 분석하거나 한 사람이 확인한 내용을 다른 팀원이 뒤늦게 아는 상황도 생겼습니다.
당시 방식 | 확인한 한계 | 이후 적용할 방식 |
고정 역할 없이 각자 문제 분석 | 초반 접근은 빠르지만 분석이 중복될 수 있음 | 웹·리버싱·포렌식 등 강점에 따른 1차 분담 |
풀이 결과를 필요할 때 공유 | 중간 가설과 실패한 시도가 누락될 수 있음 | 문제별 담당자·진행 상황·시도한 방법을 공동 기록 |
이 경험을 통해 문제를 단순히 나누는 것보다 강점을 기준으로 역할을 정하고, 진행 상황과 실패한 접근까지 공유하는 구조가 중요하다고 판단했습니다.
RESULTS
- 교육 이수: 2023년도 해킹실습을 통한 정보보호 기본교육의 14일 과정을 이수했습니다.
- 대회 성과: 태구 없는 태구팀으로 교육 과정 내 미니 모의해킹 대회에 참가해 3등을 수상했습니다.
- 분석 관점: 공격 표면 식별 → 근거 수집 → 조건 확인 → 재현 → 방어 검토로 이어지는 기본 흐름을 익혔습니다.
- 협업 개선점: 강점 기반 역할 분담, 문제별 담당자와 진행 상황 기록, 실패한 접근의 조기 공유가 필요하다는 기준을 세웠습니다.
배운 점과 다음 단계
처음에는 모의해킹을 공격 도구를 사용하는 활동으로만 생각했습니다. 그러나 실습을 통해 시스템과 네트워크의 구조를 이해하고, 노출된 지점과 공격이 가능한 조건을 근거로 확인하는 과정이라는 점을 배웠습니다. 또한 공격자의 관점에서 취약점을 살펴보며, 이를 방어하려면 무엇을 점검하고 개선해야 하는지도 생각하게 되었습니다.
이 교육은 보안을 일회성 실습이 아니라 앞으로 계속 공부하고 싶은 분야로 처음 진지하게 고민하게 만든 경험이었습니다. 교육 마지막에 참가한 첫 CTF를 통해 팀으로 보안 문제를 해결하는 과정에 흥미를 느꼈고, 이후 st3p_up 팀을 창단해 실제 CTF 대회에 참가하며 보안 학습을 이어갔습니다. ( 2023 GCHD 본선 진출 )
전체 기록과 원본
- 원본 근거 범위: 교육 안내자료와 참가확인서로 확인 가능한 교육명·기간·팀명·수상 결과를 기준으로 작성했습니다. 당시 대회의 세부 문제·플래그·명령 로그는 보관되어 있지 않아 추정해서 추가하지 않았습니다.