스케쥴/스터디
|
2026. 8. 22. 10:57
TCP Null Scan
📡 TCP NULL Scan Stealth Scan
패킷 흐름 단계별 상세 분석 — TCP 플래그를 하나도 설정하지 않은 NULL 스캔 과정을 캡처한 패킷 로그입니다.
🖥️ 스캐너 (공격자)
192.168.10.220
MAC: VMware_53:6e:cd
🎯 타깃 (대상 서버)
192.168.10.213
MAC: VMware_16:41:f3
🔍 스캔 대상 포트
TCP 80 (HTTP)
| 패킷 번호 | 출발지 (Source) | 목적지 (Destination) | 프로토콜 및 플래그 | 상세 설명 |
|---|---|---|---|---|
| No.1 ~ 2 | 192.168.10.220 192.168.10.213 | ARP Request / Reply | ARP 통신 | IP 통신 전 상대의 MAC 주소를 질의 및 수신 |
| No.3 | 192.168.10.220 192.168.10.213 | 192.168.10.213 | TCP [] | NULL 1차 NULL 패킷 전송 48911 → 80 [<None>] TCP Header의 제어 플래그(SYN, FIN, ACK 등)를 단 하나도 설정하지 않은 (0x00) 패킷 전송 |
| No.4 | 192.168.10.220 192.168.10.213 | 192.168.10.213 | TCP [] | NULL 2차 NULL 패킷 전송 48913 → 80 [<None>] 송신 포트만 변경하여 동일하게 플래그가 비어있는 패킷 전송 |
| ❌ No Response | — | — | No Reply | 응답 없음 타깃 서버로부터 어떠한 응답 패킷도 수신되지 않음 → 80번 포트가 열려 있음 (Open) 또는 필터링됨 (Open|Filtered) 으로 판단 |
⚡ TCP NULL Scan — 주요 특징 & 포인트 핵심 요약
💡 NULL Scan 동작 원리 (RFC 793)
메커니즘
- TCP 헤더 내 6개 플래그(URG, ACK, PSH, RST, SYN, FIN)를 모두
0으로 비워 발송하는 스텔스 스캔입니다. - 포트 Open: 비정상 패킷을 수신한 대상 시스템이 해당 패킷을 무시(Drop)하여 아무런 응답도 보내지 않음 (No Response).
- 포트 Closed: 대상 시스템이 RST 패킷을 반환.
📊 캡처 화면 판단
진단
✅ 3번과 4번 패킷(
[<None>])을 발송한 이후✅ 타깃(
192.168.10.213)으로부터 돌아온 응답 패킷이 전혀 없습니다.→ 스캐너는 대상의 80번 포트 상태를 Open (또는 Filtered) 상태로 판단합니다.
📋 스텔스 스캔 3종 (FIN / X-MAS / NULL) 총정리
3종 세트
[비정상 패킷 전송] ──► FIN / X-MAS / NULL
│
├──► 응답 없음 (No Response) ──► Port OPEN
│
└──► RST 패킷 수신 ──► Port CLOSED
- 공통점: 세 스캔 모두 비정상 TCP 플래그를 조합하여 IDS/방화벽의 세션 추적을 우회하고 세션을 완성하지 않는 스텔스 스캔 기법입니다.
- 한계: Unix/Linux 계열에서는 정상 동작하지만, Windows OS는 표준 미준수로 인해 포트 열림 여부와 상관없이 무조건
RST를 응답하므로 탐지가 불가능합니다.
🟢 Unix / Linux / BSD
✅ RFC 793 준수
Open → 무응답 / Closed → RST
Open → 무응답 / Closed → RST
🔴 Windows 계열
❌ RFC 793 미준수
Open / Closed 모두 RST 응답 (구분 불가)
Open / Closed 모두 RST 응답 (구분 불가)
'스케쥴 > 스터디' 카테고리의 다른 글
| IP 패킷 분할 (0) | 2026.08.22 |
|---|---|
| IP Header의 TOS 톺아보기 (0) | 2026.08.22 |
| TCP X-MAS Scan (0) | 2026.08.21 |
| 📡 TCP Half Open Scan (0) | 2026.08.21 |
| TCP Full Open Scan (0) | 2026.08.21 |
hyeseong-dev
Writer안녕하세요. 백엔드 개발자 이혜성입니다.