Quando si analizza una rete con lo scopo di rilevare malfunzionamenti o vulnerabilità bisogna innanzittutto individuare gli host attivi, esplorare la struttura della rete e il suo perimetro. Dopo aver rilevato gli apparati di rete e i dispositivi collegati è possibile scoprire i servizi attivi utilizzando tools che sondano le porte aperte.
Uno dei tool più famosi e utilizzato è Nmap. Questo tool permette di effettuare:
- Host discovery: identifica gli host di una rete che rispondono a richieste TCP, UDP o ICMP;
- Port scanning: identifica le porte aperte sugli host di destinazione;
- Version e OS detection: cerca di determinare il sistema operativo e la versione delle applicazioni in esecuzione sugli host;
- Scansioni stealth: effettua scansioni evitando sistemi di instrusion detection e logging.
Data la potenzialità di Nmap abbiamo deciso di riportare alcuni esempi di scansioni.
- Grazie al comando
nmap -v scanme.nmap.org
è possibile scansionare le porte TCP più comuni. Il flag-v
abilita la stampa di informazioni più dettagliate.
- Per effettuare una scansione solo su determinate porte è possibile usare l'opzione
-p
ed elencare le porte target. Ad esempio,nmap -sV -p 22,53 192.168.2.5
effettua una scansione verso l'host 192.168.2.5 sulle due porte 22 e 53, il flag-sV
indica anche la versione e il servizio in esecuzione.
- Per eseguire una scansione stealth con la rilevazione del sistema operativo si può usare il comando
nmap -sS -O scanme.nmap.org
. Questo comando permette di scansionare le porte aperte, lo stato della porta, il servizio in ascolto su una determinata porta e informazioni riguardo al sistema operativo. Dopo il dominio è possibile indicare la subnet mask, ad esempio, scanme.nmap.org/24 per scansionare gli host di una specifica sottorete in cui risiede scanme.nmap.org.- Nmap permette anche di effettuare scansioni verso indirizzi IP randomici con lo scopo di individuare host in ascolto su determinate porte. Ad esempio,
nmap -v -iR 100 -p 80
genera 100 indirizzi IP randomici ed effettua una scansione verso la porta 80.- Per nascondere i propri pacchetti IP quando si effettua una scansione è possibile usare la tecnica Decoy Scan creando ulteriori pacchetti con IP spoofati.
nmap -D 10.0.0.1, 10.0.0.2, 10.0.0.3 -sP 192.133.28.0/24
infatti esegue una scansione decoy ping verso la rete 192.133.28.0/24 creando pacchetti con IP spoofati presenti dopo l'opzione-D