Scan4all — il coltellino svizzero del pentesting che sostituisce una dozzina di strumenti
Immagina questo: devi scansionare rapidamente il perimetro, controllare un centinaio di servizi web per vulnerabilità, eseguire un attacco brute-force sulle password standard, e non perderti tra decine di utility CLI diverse. Di solito si finisce per fare acrobazie nel terminale, con nmap che gira in una finestra, nuclei in un'altra, e nella terza cerchi disperatamente di ricordare la sintassi di subfinder. Gli sviluppatori di GhostTroops hanno deciso che era ora di mettere fine a questo caos e hanno creato scan4all.
Non è solo un altro scanner. È un powerhouse basato su Go che combina strumenti di alto livello come nuclei, vscan, ksubdomain e subfinder. La cosa migliore è che gli autori non si sono limitati a "incollare" i binari insieme—hanno riscritto parti dei moduli e ottimizzato i parametri a livello di codice, così che tutto funzioni velocemente senza sovraccaricare la rete.
Cosa può fare in pratica
In breve — quasi tutto ciò di cui hai bisogno per la ricognizione iniziale e la ricerca di vettori di attacco. Il progetto copre diverse fasi di un audit di sicurezza contemporaneamente.
Ricerca di vulnerabilità e PoC
Lo strumento include un database di oltre 15.000 PoC. Questo include template nuclei e contributi vscan (incluso xray 2.0). Controlla tutto, da XSS e LFI di base fino ai CVE recenti in WordPress e software enterprise. Un dettaglio interessante: gli autori hanno aggiunto una logica SSL intelligente: lo scanner estrae i domini dai certificati e li aggiunge automaticamente alla coda di scansione.
Brute-forcing out-of-the-box
Scan4all supporta il brute-forcing di password su 23 protocolli. La lista include classici come SSH, RDP, MySQL, Redis, e persino RouterOS o WinRM. Un dettaglio interessante: il brute-forcing HTTP si attiva automaticamente non appena lo scanner incontra una pagina di autenticazione. Non devi specificare manualmente "questo ha bisogno di un tentativo di password."
Scansione porte e fingerprinting
Invece di reinventare la ruota, il progetto sfrutta le capacità di nmap e naabu. Riconosce 146 protocolli e conosce circa 90.000 regole di scansione porte. Inoltre, c'è una protezione integrata contro gli honeypot — se lo strumento rileva di trovarsi di fronte a un honeypot, salta semplicemente quell'host.
Come funziona sotto il cofano
Il progetto è scritto in Go, rendendolo multipiattaforma e leggero in termini di consumo di risorse. L'architettura segue un approccio a cascata: prima arriva la raccolta dati e l'identificazione del target, poi la scansione profonda e l'applicazione dei PoC.
Una delle funzionalità più interessanti è l'integrazione con Elasticsearch. Se lavori con grandi volumi di dati, i log di testo standard diventano un incubo. Scan4all può archiviare i risultati in Elasticsearch, permettendoti di costruire dashboard convenienti o semplicemente cercare rapidamente le informazioni che ti servono attraverso Kibana.
Casi d'uso pratici
Come si usa questo nella vita reale? Ecco un paio di esempi:
- Audit rapido dell'infrastruttura. Hai una lista di IP o domini della tua azienda. Con un solo comando, lanci l'enumerazione dei sottodomini, la scansione porte, il fingerprinting web e i controlli di vulnerabilità critiche.
- Bug Bounty. Grazie all'integrazione con subfinder e ksubdomain, lo strumento è ottimo per trovare "code dimenticate" nelle grandi organizzazioni.
- Controlli password deboli. Se nella tua rete ci sono molte istanze Redis, MongoDB o FTP senza configurazione adeguata, scan4all le evidenzierà più velocemente di quanto tu possa controllarle manualmente.
Esempio di esecuzione contro una lista di target:
# Точное сканирование списка URL
UrlPrecise=true ./scan4all -l targets.txt
Se nmap non è installato sul tuo sistema o non vuoi usarlo, puoi passare al naabu integrato:
priorityNmap=false ./scan4all -tp http -list targets.txt -v
Sfumature e limitazioni
Nonostante la sua potenza, il progetto ha le sue particolarità. Il README può sembrare caotico a volte, e la documentazione inglese a volte si mescola con il cinese. Dovresti anche tenere a mente che la scansione con nmap richiede privilegi di root, quindi dovrai passare la password tramite la variabile d'ambiente PPSSWWDD.
Un altro punto: lo strumento è molto rumoroso. Se stai pianificando di usarlo per audit covert, questa è una pessima idea. Genera una enorme quantità di traffico e richieste, che ti segnaleranno immediatamente in qualsiasi sistema di monitoraggio (IDS/IPS).
Vale la pena provarlo
Se fai pentesting, partecipi a Red Teaming, o semplicemente ti occupi di sicurezza nella tua azienda — decisamente sì. Scan4all fa risparmiare un sacco di tempo sul lavoro di routine. Invece di configurare catene di cinque utility diverse, ottieni una pipeline pronta all'uso.
Ovviamente, non sostituirà il tuo cervello e l'analisi manuale, ma come strumento per "arrostire" rapidamente il perimetro, è dannatamente efficace. Il progetto è aggiornato attivamente: ad esempio, è stato recentemente aggiunto il supporto per le ultime versioni di nuclei e sono stati migliorati gli algoritmi di rilevamento dei duplicati IP per evitare di scansionare la stessa cosa più volte.
Puoi iniziare semplicemente scaricando il binario dalle release su GitHub, dato che le dipendenze sono minime. Solo non dimenticare di distribuire Elasticsearch prima se intendi scavare a fondo nei risultati.
Progetti correlati