
❄️ PcapXray - 네트워크 포렌식 도구 - 패킷 캡처를 오프라인에서 네트워크 다이어그램으로 시각화하고, 장치 식별, 중요한 통신 강조 및 파일 추출 기능 제공
네트워크 포렌식 도구 — PCAP 파일 또는 실시간 트래픽을 장치 식별, 프로토콜 분류, Tor 탐지, 악성 트래픽 플래깅 기능이 포함된 주석형 네트워크 다이어그램으로 시각화합니다.

graph TD
UI[user_interface.py\nGUI 컨트롤러] --> PR[pcap_reader\n파일 + 실시간 캡처]
PR --> ENG[engines/\nauto · dpkt · scapy · pyshark]
PR --> MEM[(memory.py\n공유 상태)]
MEM --> CDF[communication_details_fetch\nDNS · whois]
MEM --> DDF[device_details_fetch\nOUI 벤더 조회]
MEM --> TTH[tor_traffic_handle\nTor 합의]
MEM --> MTI[malicious_traffic_identifier\n휴리스틱 플래그]
MEM --> SS[sqlite_store\n세션 영속성]
MEM --> PLN[plot_lan_network\nGraphviz PNG + pyvis HTML]
UI --> IG[interactive_gui\nMatplotlib 패널]
IG --> MEM
PLN --> OUT[보고서 + 다이어그램]
PCAP 파일 또는 실시간 네트워크 인터페이스가 주어지면 호스트, 트래픽 흐름, 중요/Tor/악성 통신 및 각 세션에 포함된 데이터를 표시하는 네트워크 다이어그램을 그립니다.
다음 기능을 갖춘 네트워크 다이어그램을 만듭니다:
도구 하이라이트:
메인 애플리케이션 패널

정적 네트워크 그래프 — 자연스러운 레이아웃 및 자동 맞춤 확대/축소


요구 사항: Python 3.10+
sudo apt-get update
sudo apt-get install -y python3-tk graphviz tshark
pip3 install -r requirements.txt
sudo python3 Source/main.py
특정 Python 버전(3.11, 3.12)을 사용하는 경우
python3-tk를python3.11-tk또는python3.12-tk로 바꾸세요. Pillow는 pip로만 설치하세요. apt로python3-pil을 설치하면 충돌이 발생합니다.
brew install graphviz
pip3 install -r requirements.txt
sudo python3 Source/main.py
라이브 캡처에는
sudo가 필요합니다. 파일 분석은 sudo 없이 실행됩니다.
.pcap / .pcapng 파일을 입력하거나 찾아보기로 선택auto)sudo/root 필요)PcapXray는 도구 모음에서 선택 가능한 4개의 상호 교환 가능한 파싱 백엔드를 지원합니다:
모든 종속성은 requirements.txt에 있습니다 — pip3 install -r requirements.txt로 설치하세요.
Tkinter는 PyPI에 없는 유일한 라이브러리입니다 — 시스템 패키지 관리자(Linux에서는 python3-tk, macOS에서는 Python에 포함)를 통해 설치하세요.
전체 아키텍처 문서, 호출 흐름 다이어그램, 모듈 책임, 스레딩 모델 및 새 엔진 추가 방법은 DEV.md를 참조하세요.
책임 있는 공개, 보안 상태 및 알려진 제한 사항은 SECURITY.md를 참조하세요.
# 빠른 테스트 — 네트워크 호출 없음
pytest -m "not network" Test/
# 실제 DNS + Tor를 포함한 전체 테스트
pytest Test/
# 격리된 엔진 환경
tox
tox -e all-engines
Python 3.10, 3.11, 3.12에서 96개 이상의 테스트.
dpkt 엔진을 사용하세요.| Engine | Best for | Notes |
|---|
auto | 일반 사용 | 먼저 dpkt 시도, scapy로 폴백 |
dpkt | 대용량 파일, 낮은 메모리 | 빠른 오프라인 파싱 |
scapy | 심층 프로토콜 검사 | TLS 인식, 대용량 파일에서 느림 |
pyshark | 최대 프로토콜 적용 범위 | tshark 설치 필요 |
| Library | Purpose |
|---|
| scapy | 패킷 읽기 및 라이브 캡처 |
| dpkt | 빠른 PCAP 파싱 엔진 |
| pyshark | tshark 기반 파싱 엔진 |
| ipwhois | Whois / RDAP 조회 |
| netaddr | IP 주소 분류 |
| pillow | 그래프 표시를 위한 이미지 처리 |
| stem | Tor 합의 데이터 가져오기 |
| graphviz | 네트워크 다이어그램 렌더링 |
| networkx | 그래프 구성 및 레이아웃 |
| matplotlib | 내장 대화형 그래프 패널 |
| pyvis | 대화형 HTML 네트워크 그래프 |
| pydantic | 세션 상태를 위한 타입화된 데이터 모델 |
| cryptography | TLS 암호 제품군 파싱 |