
❄️ PcapXray - Инструмент сетевой криминалистики - Для визуализации захвата пакетов в автономном режиме в виде сетевой диаграммы, включая идентификацию устройств, выделение важных коммуникаций и извлечение файлов
Инструмент сетевой криминалистики — визуализируйте PCAP-файлы или live-трафик в виде аннотированной сетевой диаграммы с идентификацией устройств, классификацией протоколов, обнаружением Tor и пометкой подозрительного трафика.

graph TD
UI[user_interface.py\nGUI controller] --> PR[pcap_reader\nFile + Live capture]
PR --> ENG[engines/\nauto · dpkt · scapy · pyshark]
PR --> MEM[(memory.py\nShared state)]
MEM --> CDF[communication_details_fetch\nDNS · whois]
MEM --> DDF[device_details_fetch\nOUI vendor lookup]
MEM --> TTH[tor_traffic_handle\nTor consensus]
MEM --> MTI[malicious_traffic_identifier\nHeuristic flags]
MEM --> SS[sqlite_store\nSession persistence]
MEM --> PLN[plot_lan_network\nGraphviz PNG + pyvis HTML]
UI --> IG[interactive_gui\nMatplotlib panel]
IG --> MEM
PLN --> OUT[Reports + Diagrams]
По заданному PCAP-файлу или live-сетевому интерфейсу построить сетевую диаграмму, отображающую хосты, потоки трафика, важные/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 — не устанавливайтеpython3-pilиз apt, это вызовет конфликт.
brew install graphviz
pip3 install -r requirements.txt
sudo python3 Source/main.py
sudoтребуется только для live-захвата. Анализ файлов выполняется без него.
.pcap / .pcapngauto)sudo/root)PcapXray поддерживает четыре взаимозаменяемых парсера, выбираемых на панели инструментов:
Все зависимости перечислены в requirements.txt — установите командой pip3 install -r requirements.txt.
Tkinter — единственная библиотека, отсутствующая в PyPI; установите её через менеджер пакетов системы (python3-tk в Linux, встроена в Python на macOS).
См. DEV.md — полная документация по архитектуре, диаграммы потоков вызовов, ответственность модулей, модель многопоточности и инструкции по добавлению нового движка.
См. SECURITY.md — ответственное раскрытие, модель безопасности и известные ограничения.
# Быстрый набор — без сетевых вызовов
pytest -m "not network" Test/
# Полный набор, включая реальные DNS и Tor
pytest Test/
# Изолированные окружения движков
tox
tox -e all-engines
96+ тестов на Python 3.10, 3.11, 3.12.
dpkt для лучшей производительности на больших файлах.| Движок | Наилучшее применение | Примечания |
|---|
auto | Общее использование | Сначала пробует dpkt, при неудаче переключается на scapy |
dpkt | Большие файлы, низкое потребление памяти | Быстрый офлайн-парсинг |
scapy | Глубокий анализ протоколов | Поддержка TLS, медленнее на больших файлах |
pyshark | Максимальное покрытие протоколов | Требует установленного tshark |
| Библиотека | Назначение |
|---|
| scapy | Чтение пакетов и live-захват |
| dpkt | Быстрый парсинг PCAP |
| pyshark | Парсинг на основе tshark |
| ipwhois | Поиск Whois / RDAP |
| netaddr | Классификация IP-адресов |
| pillow | Обработка изображений для отображения графика |
| stem | Получение данных консенсуса Tor |
| graphviz | Рендеринг сетевой диаграммы |
| networkx | Построение графа и компоновка |
| matplotlib | Встроенная интерактивная панель графика |
| pyvis | Интерактивный HTML-граф сети |
| pydantic | Типизированные модели данных для состояния сеанса |
| cryptography | Разбор шифров TLS |