
Uno strumento Python che genera visualizzazioni HTML interattive basate su React a partire dall'output JSON di masscan, con un grafo di rete a forza diretta basato su D3.js.
Uno strumento Python che genera visualizzazioni HTML interattive basate su React a partire dall'output JSON di masscan, con un grafico di rete force-directed basato su D3.js.

: per cercare solo le porte (es. :443)* per corrispondenze parziali (es. :*443, :80*, :*8*)# Clone or download the project
cd masscan_report
# Install dependencies (optional, only needed for PDF generation in development)
pip install pyinstaller # Only if building exe
Scarica masscan_report.exe dalla cartella dist/ - non è richiesta alcuna installazione di Python.
# Using Python
python masscan_report.py <input_json> [-o output.html]
# Using executable
masscan_report.exe <input_json> [-o output.html]
# Generate report with default output (report.html)
python masscan_report.py scans/home.json
# Specify custom output file
python masscan_report.py scans/network_scan.json -o network_report.html
# Using the executable
.\dist\masscan_report.exe .\scans\home.192.168.10000.json
Lo strumento prevede il formato di output JSON di masscan:
[
{"ip": "192.168.1.1", "timestamp": "1234567890", "ports": [
{"port": 80, "proto": "tcp", "status": "open", "reason": "syn-ack", "ttl": 64}
]},
{"ip": "192.168.1.1", "timestamp": "1234567891", "ports": [
{"port": 443, "proto": "tcp", "status": "open", "reason": "syn-ack", "ttl": 64}
]}
]
Genera questo con masscan:
masscan 192.168.1.0/24 -p1-65535 --rate 1000 -oJ scan_results.json
masscan_report/
├── masscan_report.py # Main script
├── port_descriptions.py # Port database (6700+ lines)
├── scans/ # Sample scan files
│ ├── home.json
│ └── home.192.168.10000.json
├── dist/
│ └── masscan_report.exe # Standalone executable
├── report.html # Generated output
└── README.md
Il file port_descriptions.py contiene informazioni dettagliate per oltre 130 porte comuni, tra cui:
pip install pyinstaller
pyinstaller --onefile --name masscan_report --add-data "port_descriptions.py;." masscan_report.py
L'eseguibile verrà creato in dist/masscan_report.exe.
Licenza MIT
I contributi sono benvenuti! Sentiti libero di inviare issue e pull request.
| Azione | Effetto |
|---|
| Clicca sul nodo (grafico) | Apre il modale info |
| Clicca sull'host (menu laterale) | Evidenzia host e porte |
| Trascina nodo | Riposiziona nodo |
| Rotellina del mouse | Zoom avanti/indietro |
| Clicca + trascina (sfondo) | Sposta la vista |
| 🔄 Reimposta vista | Resetta zoom e posizione |
| ⚡ Riscalda | Rianima la simulazione delle forze |
| 📄 Esporta PDF | Genera report PDF |
| Pattern | Corrisponde a |
|---|
192.168 | IP che contengono "192.168" |
:443 | Esattamente la porta 443 |
:*443 | Porte che terminano con 443 (es. 8443) |
:443* | Porte che iniziano con 443 |
:*8* | Porte contenenti 8 (es. 80, 8080, 443) |