
❄️ PcapXray - Uno strumento di Network Forensics - Per visualizzare offline una Packet Capture come diagramma di rete, inclusa l'identificazione dei dispositivi, evidenziare comunicazioni importanti e l'estrazione di file
Uno strumento di network forensics — visualizza file PCAP o traffico live come diagramma di rete annotato con identificazione dei dispositivi, classificazione dei protocolli, rilevamento Tor e segnalazione di traffico malevolo.

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]Dato un file PCAP o un'interfaccia di rete live, tracciare un diagramma di rete che mostri host, flussi di traffico, comunicazioni importanti/Tor/malevole e i dati coinvolti in ogni sessione.
Realizzare un diagramma di rete con le seguenti caratteristiche:
Punti salienti dello strumento:
Pannello principale dell'applicazione

Grafico di rete statico — layout naturale con zoom adattivo


Requisiti: 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
Se si usa una versione specifica di Python (3.11, 3.12), sostituire
python3-tkconpython3.11-tkopython3.12-tk. Installare Pillow solo tramite pip — non installarepython3-pilda apt poiché entra in conflitto.
brew install graphviz
pip3 install -r requirements.txt
sudo python3 Source/main.py
sudoè necessario per la cattura live. L'analisi dei file funziona senza.
.pcap / .pcapngauto)sudo / root)PcapXray supporta quattro backend di parsing intercambiabili selezionabili dalla barra degli strumenti:
Tutte le dipendenze sono in requirements.txt — installare con pip3 install -r requirements.txt.
Tkinter è l'unica libreria non su PyPI — installarla tramite il gestore pacchetti di sistema (python3-tk su Linux, incluso con Python su macOS).
Vedere DEV.md per la documentazione completa dell'architettura, diagrammi di flusso delle chiamate, responsabilità dei moduli, modello di threading e come aggiungere un nuovo motore.
Vedere SECURITY.md per la divulgazione responsabile, la postura di sicurezza e le limitazioni note.
# Suite veloce — nessuna chiamata di rete
pytest -m "not network" Test/
# Suite completa inclusi DNS reale e Tor
pytest Test/
# Ambienti motore isolati
tox
tox -e all-engines
96+ test su Python 3.10, 3.11, 3.12.
dpkt per prestazioni ottimali su file grandi.| Motore | Ideale per | Note |
|---|
auto | Uso generale | Prova prima dpkt, poi scapy |
dpkt | File grandi, bassa memoria | Parsing offline veloce |
scapy | Ispezione approfondita dei protocolli | Consapevole di TLS, più lento su file grandi |
pyshark | Massima copertura dei protocolli | Richiede tshark installato |
| Libreria | Scopo |
|---|
| scapy | Lettura pacchetti e cattura live |
| dpkt | Motore di parsing PCAP veloce |
| pyshark | Motore di parsing basato su tshark |
| ipwhois | Ricerca Whois / RDAP |
| netaddr | Classificazione indirizzi IP |
| pillow | Elaborazione immagini per visualizzazione grafico |
| stem | Recupero dati consenso Tor |
| graphviz | Rendering diagramma di rete |
| networkx | Costruzione grafo e layout |
| matplotlib | Pannello grafico interattivo incorporato |
| pyvis | Grafico di rete HTML interattivo |
| pydantic | Modelli di dati tipizzati per stato sessione |
| cryptography | Parsing suite di cifratura TLS |