
❄️ PcapXray - Un outil de forensic réseau - Pour visualiser une capture de paquets hors ligne sous forme de diagramme réseau incluant l'identification des appareils, mettre en évidence les communications importantes et l'extraction de fichiers
Un outil de forensic réseau — visualisez des fichiers PCAP ou le trafic en direct sous forme d'un diagramme réseau annoté avec identification des appareils, classification des protocoles, détection Tor et signalement du trafic malveillant.

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]
À partir d'un fichier PCAP ou d'une interface réseau en direct, tracer un diagramme réseau affichant les hôtes, les flux de trafic, les communications importantes/Tor/malveillantes et les données impliquées dans chaque session.
Créer un diagramme réseau avec les fonctionnalités suivantes :
Points forts de l'outil :
Panneau principal de l'application

Graphe réseau statique — disposition naturelle avec zoom automatique


Prérequis : 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
Si vous utilisez une version spécifique de Python (3.11, 3.12), remplacez
python3-tkparpython3.11-tkoupython3.12-tk. Installez Pillow via pip uniquement — n'installez paspython3-pildepuis apt car cela crée un conflit.
brew install graphviz
pip3 install -r requirements.txt
sudo python3 Source/main.py
sudoest nécessaire pour la capture en direct. L'analyse de fichiers peut se faire sans.
.pcap / .pcapngauto)sudo / root)PcapXray prend en charge quatre moteurs d'analyse interchangeables sélectionnables depuis la barre d'outils :
Toutes les dépendances se trouvent dans requirements.txt — installez avec pip3 install -r requirements.txt.
Tkinter est la seule bibliothèque absente de PyPI — installez-la via votre gestionnaire de paquets système (python3-tk sur Linux, inclus avec Python sur macOS).
Voir DEV.md pour la documentation complète de l'architecture, les diagrammes de flux d'appels, les responsabilités des modules, le modèle de thread et comment ajouter un nouveau moteur.
Voir SECURITY.md pour la divulgation responsable, la posture de sécurité et les limitations connues.
# Suite rapide — sans appels réseau
pytest -m "not network" Test/
# Suite complète incluant DNS et Tor réels
pytest Test/
# Environnements moteur isolés
tox
tox -e all-engines
96+ tests sur Python 3.10, 3.11, 3.12.
dpkt pour de meilleures performances sur les gros fichiers.| Moteur | Idéal pour | Remarques |
|---|
auto | Usage général | Essaye d'abord dpkt, puis scapy en repli |
dpkt | Fichiers volumineux, faible mémoire | Analyse hors ligne rapide |
scapy | Inspection approfondie des protocoles | Compatible TLS, plus lent sur les gros fichiers |
pyshark | Couverture maximale des protocoles | Nécessite tshark installé |
| Bibliothèque | Utilité |
|---|
| scapy | Lecture de paquets et capture en direct |
| dpkt | Moteur d'analyse rapide de fichiers PCAP |
| pyshark | Moteur d'analyse basé sur tshark |
| ipwhois | Recherche Whois / RDAP |
| netaddr | Classification des adresses IP |
| pillow | Traitement d'images pour l'affichage des graphes |
| stem | Récupération des données de consensus Tor |
| graphviz | Rendu du diagramme réseau |
| networkx | Construction et disposition du graphe |
| matplotlib | Panneau graphique interactif embarqué |
| pyvis | Graphe réseau HTML interactif |
| pydantic | Modèles de données typés pour l'état de session |
| cryptography | Analyse des suites de chiffrement TLS |