
패시브 하이브리드 핑거프린팅 엔진 — 단일 패킷 전송 없이 호스트 식별
운영체제(OS)에 구애받지 않는 다중 프로토콜 프로파일링 및 인텔리전스를 위한 패시브 하이브리드 분석 도구
단 하나의 패킷도 보내지 않고 네트워크 상의 호스트를 지문(fingerprint) 식별합니다.
PHANTOMPRINT는 여러 패시브 신호(TCP/IP 스택, TLS/JA4, DHCP 옵션 55, HTTP/2 HPACK, DNS 동작)를 상호 연관시켜 관찰된 트래픽만으로 운영체제, 브라우저 및 기기를 식별합니다.
| 도구 | TCP/IP FP | TLS JA4 | DHCP FP | 다중 신호 | 신뢰도 점수 |
|---|---|---|---|---|---|
| p0f | ✅ | ❌ | ❌ | ❌ | ❌ |
| Zeek | ✅ | 플러그인 | ❌ | ❌ | ❌ |
| JA3er | ❌ | ✅ | ❌ | ❌ | ❌ |
| PHANTOMPRINT | ✅ | ✅ | ✅ | ✅ | ✅ |
p0f는 2014년 이후로 유지보수되지 않았습니다. Zeek는 무거운 인프라가 필요합니다. 아무 도구도 이러한 모든 신호를 통합되고 점수가 부여된 호스트 프로파일로 상호 연관시키지 못합니다.
Network Traffic
│
├─── TCP SYN/SYN-ACK ──→ TCPIPParser ──→ TTL + Window + Options hash
├─── TLS ClientHello ──→ TLSParser ──→ JA4 fingerprint
├─── DHCP DISCOVER ──→ DHCPParser ──→ Option 55 fingerprint
└─── (HTTP/2, DNS) ──→ [coming v1.5]
│
SignalMerger
│
Bayesian Score Engine
│
HostProfile
┌──────────┴──────────┐
Terminal JSON / STIX
패킷이 전송되지 않습니다. 연결이 열리지 않습니다. 완전히 수동적입니다.
git clone https://github.com/youruser/phantomprint
cd phantomprint
pip install -e ".[dev]"
Python 3.11+와 라이브 캡처를 위한 root/CAP_NET_RAW가 필요합니다.
sudo phantomprint live -i eth0
sudo phantomprint live -i eth0 -t 60 -o results.json
sudo phantomprint live -i eth0 --verbose
phantomprint pcap capture.pcap
phantomprint pcap capture.pcap -o results.json
phantomprint signatures
phantomprint signatures --category os
phantomprint signatures --category browser
◈ PHANTOMPRINT v0.1.0 — Results (4 hosts)
┌─────────────────┬──────────────────┬───────────────┬──────────────────────┬───────┐
│ Host / MAC │ OS │ Browser / App │ Signals │ Score │
├─────────────────┼──────────────────┼───────────────┼──────────────────────┼───────┤
│ 192.168.1.45 │ Windows 11 │ Chrome 120 │ TCP TLS DHCP │ 78% │
│ 192.168.1.12 │ Linux 6.x │ curl │ TCP TLS │ 52% │
│ 192.168.1.1 │ Cisco IOS Router │ — │ TCP │ 18% │
│ aa:bb:cc:dd:... │ Android 12-14 │ — │ DHCP │ 31% │
└─────────────────┴──────────────────┴───────────────┴──────────────────────┴───────┘
시그니처는 signatures/raw/ 디렉토리에 YAML 파일로 저장됩니다:
# signatures/raw/os/windows11.yaml
id: os_win11
name: Windows 11
type: os
description: Windows 11 / Windows Server 2022
signals:
tcp_ip:
- "128:65535:1:mss,nop,wscale,sackok,timestamp"
- "128:64240:1:mss,nop,wscale,sackok,timestamp"
dhcp:
- "1,3,6,15,31,33,43,44,46,47,119,121,249,252"
자체 시그니처를 추가하면 자동으로 로드됩니다.
v1.0 ─ TCP/IP + TLS/JA4 + DHCP parsers (current)
v1.5 ─ HTTP/2 HPACK fingerprinting, DNS behavior analysis, Rust capture engine
v2.0 ─ Cross-sensor correlation (Redis), behavioral drift detection, STIX 2.1 output
v2.5 ─ Zeek plugin, Elastic/Splunk output, web UI
PHANTOMPRINT는 귀하가 소유하거나 명시적 모니터링 권한이 있는 네트워크에서 사용하도록 설계되었습니다. 패시브 지문 식별은 MITRE ATT&CK T1040(네트워크 스니핑)에 해당합니다 — 배포 전에 적절한 권한을 확보하십시오.
GPL-3.0 라이선스 하에 배포됩니다.