FOR AUTHORIZED & EDUCATIONAL USE ONLY REV. 2026-07 · v1.0
AUTHORIZATION REQUIRED BEFORE USE

본인 소유 또는
승인받은 시스템에서만.

개발자를 위한 윤리적 해킹 · 침투테스트 실무 입문 매뉴얼입니다. 실제 공격 대상이 아닌, 본인 소유 랩 환경과 합법적인 연습 플랫폼에서 Kali Linux, Nmap, Wireshark, Burp Suite를 다루는 방법을 다룹니다.

SCOPE  본인 소유 VM · 합법적 연습 플랫폼(HTB, TryHackMe, DVWA) 한정
EXCLUDES  서면 승인 없는 제3자 시스템·서비스에 대한 실습
GOAL  방어 역량 강화 · 보안 커리어(버그바운티/펜테스터) 기초 확보
01 · 시작하기 전에

법과 윤리 — 여기서부터 시작하는 이유

"해킹 기술"과 "사이버 범죄"를 가르는 유일한 기준은 딱 하나, 승인(authorization)입니다. 같은 명령어, 같은 도구라도 본인 소유 시스템이나 서면으로 허가받은 대상에서 쓰면 보안 연구이고, 허가 없는 제3자 시스템에서 쓰면 범죄입니다. 대한민국에서는 정보통신망 이용촉진 및 정보보호 등에 관한 법률 (정보통신망법)과 형법상 컴퓨터등 사용사기죄·업무방해죄가, 미국에서는 CFAA(Computer Fraud and Abuse Act)가 승인되지 않은 접근 자체를 처벌 대상으로 규정합니다.

원칙 — 이 매뉴얼의 모든 내용은 ① 본인이 소유한 가상머신, ② HackTheBox·TryHackMe·OWASP Juice Shop 같은 합법적 연습 플랫폼, ③ 서면 계약(Rules of Engagement)으로 명시적 승인을 받은 실제 업무 범위 안에서만 사용해야 합니다. 승인받지 않은 도메인·IP·계정에 스캐너나 프록시를 겨누는 순간, 실습이 아니라 범죄가 됩니다.

실무에서는 프로젝트 시작 전 Rules of Engagement(RoE) 문서에 대상 범위(IP/도메인), 허용 시간대, 금지 기법(예: 실서비스 DoS 금지), 비상 연락망을 명시하고 양측이 서명합니다. 개인 학습 단계에서도 이 습관을 들이는 것이 좋습니다 — "내가 지금 손대는 이 시스템, 나에게 권한이 있는가?"를 매 실습 전에 스스로 확인하는 것입니다.

02 · 프레임워크

침투테스트 방법론 5단계

업계 표준(PTES, OWASP Testing Guide)이 공유하는 공통 골격입니다. 각 단계는 순서대로 진행되며, 다음 단계는 이전 단계의 산출물을 입력으로 씁니다.

01

정찰 (Recon)

공개 정보 수집. 도메인, IP 대역, 기술 스택, 조직 구조 파악.

02

스캐닝·열거

열린 포트, 실행 서비스, 버전 정보를 능동적으로 확인.

03

취약점 분석

알려진 CVE, 설정 오류, 로직 결함 매칭.

04

익스플로잇

랩 환경에서만 — 취약점이 실제 악용 가능한지 검증.

05

보고 (Report)

재현 절차·위험도·조치 방안을 문서화해 전달.

이 매뉴얼은 1~3단계와 5단계를 자세히 다루고, 4단계는 본인 소유 랩에서만 다루는 것을 전제로 툴 사용법 위주로 설명합니다.

03 · 환경 구축

합법적으로 연습할 수 있는 랩 만들기

실습은 반드시 격리된 환경에서 진행합니다. 아래는 개발자가 가장 빠르게 시작할 수 있는 조합입니다.

① 공격자 머신 — Kali Linux

침투테스트용 도구가 사전 설치된 데비안 기반 배포판입니다. VM으로만 운용하고 호스트 OS와 분리합니다.

# VirtualBox/UTM에 Kali 공식 이미지 설치 $ curl -O https://kali.download/virtual-images/current/kali-linux-2026.1-virtualbox-amd64.7z # 최소 사양: 2 vCPU / 4GB RAM / 40GB 디스크 # 네트워크 어댑터는 반드시 'Host-Only' 또는 'NAT'로 설정

② 대상 머신 — 취약점 실습용 VM

고의로 취약하게 설계된 학습용 이미지입니다. 실제 서비스가 아니므로 마음껏 공격해도 합법입니다.

Metasploitable2/3 리눅스/윈도우 취약 서버 모음 DVWA Damn Vulnerable Web App (PHP) OWASP Juice Shop 현대적 웹앱 취약점 종합 VulnHub 이미지 시나리오별 CTF VM

③ 클라우드 기반 연습 플랫폼

플랫폼특징추천 대상
TryHackMe가이드형 학습, 초보자 친화적 룸 구성입문자
HackTheBox실전형 박스, 난이도 높음, 커뮤니티 활발중급 이상
PortSwigger Web Security AcademyBurp Suite 제작사 운영, 무료, 웹 취약점 특화웹 개발자
PentesterLab실습 중심, CVE 재현 랩 다수실무 지향

이 플랫폼들은 자체 인프라가 "공격받는 것"에 동의한 상태로 운영되므로, 별도 서면 승인 없이도 합법적으로 실습할 수 있습니다.

04 · 핵심 도구

정찰과 스캐닝 — Nmap

Nmap은 네트워크 상의 호스트, 열린 포트, 서비스 버전을 식별하는 표준 스캐너입니다. 자신의 서버 상태를 점검하거나 보안 설정을 검증할 때도 실무에서 매일 쓰입니다.

Nmap NETWORK SCANNER
오픈 포트, OS 지문, 서비스 버전 탐지
# 대상 호스트의 상위 1000개 포트 스캔 $ nmap -sV 192.168.56.10 # 서비스 버전 + OS 탐지 + 스크립트 기본 진단 $ nmap -A -T4 192.168.56.10 # 전체 65535 포트 + 결과를 파일로 저장 $ nmap -p- -oN fullscan.txt 192.168.56.10

-sV 서비스 버전 탐지 · -A 종합 진단(OS/버전/트레이스라우트) · -p- 전체 포트 · -T4 스캔 속도(공격적)

Wireshark PACKET ANALYZER
네트워크 트래픽을 패킷 단위로 캡처·분석

본인 네트워크의 이상 트래픽 탐지, 프로토콜 디버깅, 암호화되지 않은 통신 점검에 사용합니다. GUI에서 캡처 후 필터를 적용해 특정 프로토콜만 확인합니다.

http // HTTP 트래픽만 표시 ip.addr == 192.168.56.10 // 특정 호스트 트래픽 tcp.port == 443 // 특정 포트
05 · 핵심 도구

웹 애플리케이션 분석 — Burp Suite / OWASP ZAP

웹 취약점 진단의 핵심은 브라우저와 서버 사이에 프록시를 끼워 넣어 요청·응답을 가로채고 조작해보는 것입니다. 아래는 PortSwigger Web Security AcademyDVWA 같은 합법적 대상에 대한 표준 워크플로우입니다.

1. 브라우저 프록시 설정
2. Burp CA 인증서 설치
3. Proxy → Intercept 캡처
4. Repeater로 요청 변조
5. Scanner로 자동 진단
Burp Suite Community WEB PROXY
HTTP/S 요청 가로채기, 파라미터 변조, 취약점 재현
# 1. Burp 실행 후 기본 프록시는 127.0.0.1:8080 # 2. Firefox 설정 → Network Settings → Manual proxy → 127.0.0.1:8080 # 3. http://burp 접속 → CA Certificate 다운로드 및 브라우저에 신뢰 등록 # 4. Proxy 탭에서 Intercept On → 요청 캡처 → Repeater로 전송(Ctrl+R)

Repeater 탭에서 파라미터 값을 바꿔 재전송하며 입력 검증 로직을 관찰합니다. 예: 게시글 ID를 다른 사용자의 값으로 바꿔 보내 접근 제어(IDOR)가 제대로 되는지 확인.

06 · 체크리스트

OWASP Top 10 — 웹 취약점 10대 유형

OWASP 재단이 실제 침해 사고 데이터를 기반으로 매년 갱신하는 웹 애플리케이션 취약점 순위입니다. 코드를 작성하는 개발자 입장에서는 "무엇을 스캔당하는가"보다 "무엇을 미리 막을 것인가"로 읽는 게 더 유용합니다.

유형설명방어 기본기
Broken Access Control권한 없는 리소스에 접근 가능서버 측 권한 검증, 객체 참조 재확인
Injection (SQL/NoSQL/Command)사용자 입력이 쿼리·명령으로 실행됨Prepared Statement, 입력 화이트리스트
Cryptographic Failures민감정보 평문 저장·전송TLS 강제, bcrypt/Argon2 해싱
Insecure Design설계 단계부터 위협모델 부재Threat modeling, 보안 요구사항 명시
Security Misconfiguration기본 계정, 불필요 서비스 노출최소 권한 원칙, 정기 하드닝
Vulnerable Components취약한 오픈소스 의존성 사용SCA 도구, 정기 의존성 업데이트
Auth & Session Failures세션 고정, 약한 인증MFA, 세션 만료/재발급 정책
Software/Data Integrity서명 검증 없는 업데이트·역직렬화서명 검증, 신뢰 소스 제한
Logging & Monitoring Failures침해 발생해도 탐지 불가중앙 로깅, 이상행위 알림
SSRF서버가 공격자가 지정한 URL로 요청아웃바운드 요청 화이트리스트
07 · AI 개발자 특화

AI/LLM 애플리케이션 보안 — OWASP LLM Top 10

LLM을 활용한 서비스를 만드는 개발자에게 특히 중요한 취약점 유형입니다. 전통적 웹 보안과 겹치지 않는 새로운 공격 표면이 존재합니다.

Prompt Injection

사용자 입력이나 외부 문서에 숨겨진 지시문이 시스템 프롬프트를 무력화. 방어: 신뢰 경계 분리, 출력 검증, 도구 호출 권한 최소화.

Insecure Output Handling

LLM 출력을 검증 없이 실행/렌더링해 XSS·명령 실행으로 이어짐. 방어: 출력을 신뢰하지 않는 사용자 입력처럼 취급하고 항상 sanitize.

Excessive Agency

에이전트에 과도한 도구·API 권한 부여. 방어: 최소 권한, 민감 작업은 사람 승인 단계 삽입.

Sensitive Info Disclosure

학습 데이터·시스템 프롬프트·API 키가 응답에 노출. 방어: 시스템 프롬프트에 비밀정보 미포함, 응답 필터링 계층 추가.

전체 목록과 최신 사례는 OWASP GenAI Security Project 공식 문서를 참고하는 것을 권장합니다.

08 · 다음 단계

합법적으로 돈이 되는 경로

자격증 로드맵

  1. CompTIA Security+ — 보안 기초 개념 검증, 입문 표준
  2. eJPT (INE) — 실습형 입문 침투테스트 자격
  3. OSCP (Offensive Security) — 실전형 최고 권위 자격, 24시간 실습 시험
  4. CEH (EC-Council) — 이론 중심, 국내 인지도 높음

버그바운티로 수익화

  • HackerOne / Bugcrowd — 기업이 공식 허가한 대상만 테스트, 취약점 리포트로 포상금 획득
  • Scope 문서를 반드시 확인 — 범위 밖 자산 테스트는 즉시 실격이자 위법
  • 초기에는 중복 제보가 잦은 만큼 리포트 품질(재현 가능한 PoC, 명확한 영향도 서술)이 승패를 가름
09 · 산출물

보고서 작성 — 발견보다 전달이 어렵다

침투테스트의 가치는 발견한 취약점이 아니라, 그것이 고쳐지는 것에서 나옵니다. 좋은 보고서는 개발자가 30분 안에 재현하고 고칠 수 있게 씁니다.

1. Executive Summary — 비개발자 임원용, 비즈니스 영향 중심 2. Scope & Methodology — 테스트 범위, 사용 도구, 기간 3. Findings — 취약점별: 위험도(CVSS) / 재현 절차 / 영향 / 조치안 4. Appendix — 원시 스캔 로그, 스크린샷, PoC 코드

위험도는 CVSS(Common Vulnerability Scoring System) 기준으로 산정하고, 개발팀이 바로 쓸 수 있도록 조치안은 코드 레벨로 구체화합니다(예: "입력 검증 강화" 대신 "이 파라미터에 parameterized query 적용").