Esplorazione della Rete con GoScan: Una Guida Dettagliata
L’enumerazione rappresenta una fase cruciale nei test di penetrazione (pentesting) di una rete. Esaminiamo come portare a termine questa operazione attraverso l’utilizzo di GoScan.
Molti scanner di rete, come Nmap e zmap, richiedono un notevole impegno e tempo per completare la scansione, a seconda delle dimensioni della rete. Nonostante la curva di apprendimento, questi strumenti risultano comunque validi.
Tuttavia, GoScan, uno scanner di rete interattivo, automatizza le operazioni e consente un’enumerazione rapida di reti e servizi.
Che cos’è GoScan?
GoScan si presenta come uno scanner di rete dotato di un’interfaccia interattiva, capace di automatizzare alcune funzioni di enumerazione di Nmap. Si distingue per la funzione di completamento automatico con tab e un database SQLite per garantire stabilità delle connessioni e dei dati, anche in circostanze difficili.
Non va confuso con i vari scanner della community. GoScan è molto più di un framework costruito per l’astrazione e l’automatizzazione di diverse operazioni. Sfrutta principalmente le capacità di scansione delle porte e di enumerazione dei servizi di Nmap, insieme ad altri port scanner come Nikto.
GoScan è in grado di coprire tutti i passaggi chiave della scansione di una rete:
- Rilevamento degli host (ARP + ping sweep)
- Enumerazione DNS
- Enumerazione dei servizi
- Scansione delle porte
- Enumerazione dei domini
Installazione dello Strumento
Compilazione dal codice sorgente
Clona il repository:
$ git clone https://github.com/marco-lancini/goscan.git
Accedi alla directory GoScan ed esegui la compilazione:
$ cd goscan/goscan $ make setup $ make build
Utilizza questo comando per creare un file binario compatibile con diverse piattaforme:
$ make cross
Installazione tramite Docker
$ git clone https://github.com/marco-lancini/goscan.git $ cd goscan/ $ docker-compose up --build
Installazione Binaria
Questo è il metodo di installazione consigliato. Scarica il binario:
# Linux (64bit) $ wget https://github.com/marco-lancini/goscan/releases/download/v2.4/goscan_2.4_linux_amd64.zip $ unzip goscan_2.4_linux_amd64.zip # Linux (32bit) $ wget https://github.com/marco-lancini/goscan/releases/download/v2.4/goscan_2.4_linux_386.zip $ unzip goscan_2.4_linux_386.zip # Il passo successivo è inserire l'eseguibile nel PATH $ chmod +x goscan $ sudo mv ./goscan /usr/local/bin/goscan
Utilizzo di GoScan
Ping Sweep
GoScan è intuitivo, grazie al completamento automatico dei comandi e ai suggerimenti tramite tab. Inizia a digitare un comando e comparirà un suggerimento con la descrizione.
Inizieremo caricando un obiettivo. Possiamo caricare diversi indirizzi IP oppure, nel nostro caso, l’indirizzo IP della nostra macchina di test:
[goscan] > load target SINGLE 10.0.1.24 [*] Imported target: 10.0.1.24
Poi, eseguiamo un ping sweep:
GoScan crea una directory dove saranno salvati i risultati. È possibile definire una posizione diversa per la directory, ma quella predefinita va bene. Successivamente, possiamo vedere il comando Nmap utilizzato e il tempo impiegato per completarlo. L’output è disponibile in vari formati nella cartella appena creata.
Scansione delle porte
Le capacità di scansione delle porte di GoScan sono probabilmente la sua caratteristica più potente. Digitando “portscan” possiamo visualizzare le diverse tipologie di scansione disponibili:
Qualsiasi informazione salvata da GoScan può essere visualizzata utilizzando il comando “show”. Ad esempio, possiamo visualizzare gli obiettivi:
[goscan] > show targets +------------+---------+ | ADDRESS | STEP | +------------+---------+ | 10.0.1.24 | SWEEPED | +------------+---------+
Enumerazione dei servizi
GoScan permette anche di enumerare i servizi in esecuzione sulla macchina di test, oltre alla scansione delle porte. Digitando “enumerate”, possiamo vedere i moduli disponibili, tra cui FINGER, FTP, HTTP, RDP e SMB.
Ogni servizio offre delle opzioni, come DRY (test a secco), POLITE (esecuzione senza brute force) e BRUTEFORCE (esecuzione brute force).
Scansioni speciali
GoScan dispone di alcune scansioni specifiche utili per la ricognizione. Digitando “special” al prompt, si visualizzano le opzioni:
[goscan] > special eyewitness Takes screenshots of websites and open VNC servers domain Extracts domain information from enumerated data dns Performs DNS enumeration
La funzione EyeWitness, che cattura screenshot di pagine web e server VNC, è inclusa nella scansione dei testimoni oculari. Per funzionare, EyeWitness deve essere installato nel PATH del sistema. La scansione del dominio serve a enumerare informazioni come utenti, host e server.
Considerazioni finali ✍
GoScan è uno strumento molto utile per scoprire rapidamente reti e servizi, ma alcuni aspetti possono essere migliorati. Ad esempio, potrebbero essere aggiunti altri moduli di enumerazione dei servizi come SNMP e SMTP. Nel complesso, GoScan è uno strumento valido che semplifica diverse operazioni di enumerazione di Nmap.