Guida Reti Nmap: le basi per iniziare

22 Febbraio 2022
475
42
353
350
Ultima modifica:
Introduzione
Nmap è un tool per il port scanning, host discovering e network mapping scritto principalmente in LUA, C e C++ riesce ad individuare quali porte siano aperte/chiuse/filtrate, è cross-platform, disponibile per Windows(GUI-CLI) , Linux (CLI) e Mac OS (GUI-CLI).

Creazione del laboratorio
Per prima cosa creiamo il laboratorio, se non avete installato Nmap andate nella shell e scrivete:
Bash:
sudo apt install nmap -y #debian e derivate
sudo pacman -Sy nmap #arch e derivate
Su Kali e Parrot SEC è preinstallato. ci servirà la VM di Metasploitable. Mapperemo quest'ultima.
meta.png

Scansione su porta specifica e non
Nel caso volessimo sapere se solo una determinata porta (es. la 80 HTTP) sia aperta/chiusa/filtrata ci sono due possibili metodi:
Inserire il prefisso -p numero porta oppure Inserire sempre il prefisso -p ma con il nome della porta al posto del numero:
Bash:
nmap -p 80 192.168.1.218
nmap -p http 192.168.1.218
p80-ms.png
http.met.png
Se volessimo mappare tutte le porte dobbiamo mettere il parametro -p-:
Bash:
nmap -p- 192.168.1.218
Nmap prende in considerazione di default le prime 1000 porte (well know ports), quindi se vogliamo scansionare una porta oltre a quella soglia dobbiamo mettere il parametro -p numero porta:
Bash:
nmap -p 8080 192.168.1.218

Stealth scan SYN
Nmap offre la possibilita di effetuare una scansione "Stealth" , per esempio può effettuare una scansione SYN senza però stabilire una connessione.
ma prima vediamo cos'è il "3-way TCP handshake" :
Mettiamo caso che il computer di Alice si debba collegare con quello di Bob sfruttando il protocollo TCP:
  1. Alice invia un pacchetto SYN a Bob;
  2. Bob, dopo aver ricevuto il pacchetto SYN, invia un SYN-ACK;
  3. Alice a questo punto invia un pacchetto ACK;
E dopo questa stretta di mano la connesione viene stabilita, ecco, Nmap invia il pacchetto SYN, aspetta il SYN-ACK ma non invia un ACK, così Nmap può stabilire quali porte siano aperte senza stabilire una connessione.
Per farlo andiamo nella shell e scriviamo:
Bash:
nmap -sS 192.168.1.218
sS-scan.png

Scansione UDP
Ora vediamo come scansionare porte UDP (User Datagram Protocol) , andiamo nella shell e digitiamo:
Bash:
nmap -sU 192.168.1.218
In output andranno le porte UDP con il proprio stato e servizio.

OS detection
Possiamo stabilire l'OS (Operating System) usato dal computer remoto con il parametro -O seguito dall'IP
Bash:
nmap -O 192.168.1.218
os-detection.png
Essendo che Metasploitable è una macchina Linux, Nmap di conseguenze ci ha restituito "Linux 2.6 X". Ma come funziona questa flag:
In pratica Nmap riesce a rilevare l'OS utilizzato dall'host attraverso il Fingerprint dello Stack TCP/IP e controlla ogni singolo bit preso in risposta,
Poi effettua test come "TCP ISN sampling", il "TCP option support and ordering", "IP ID Sampling" e altri. dopo di chè il Nmap mette a confronto il tutto con il proprio database: nmap -os -db.
 
Bravo, però avresti potuto mostrare anche altre funzionalità del software. Nmap è un tool vastissimo e permette di fare innumerevoli operazioni: riconoscimento del sistema operativo del computer remoto, scansione di tutte le porte presenti nel dispositivo e dei relativi servizi, il traceroute, ecc. In ogni caso, grazie lo stesso per il contributo. ;)

P.S: I grandi Alice e Bob non mancano mai! XD
 
  • Mi piace
Reazioni: 0xbro
Ultima modifica:
Bravo, però avresti potuto mostrare anche altre funzionalità del software. Nmap è un tool vastissimo e permette di fare innumerevoli operazioni: riconoscimento del sistema operativo del computer remoto, scansione di tutte le porte presenti nel dispositivo e dei relativi servizi, il traceroute, ecc. In ogni caso, grazie lo stesso per il contributo. ;)

P.S: I grandi Alice e Bob non mancano mai! XD
Si, hai ragione, l'ho fatta oggi più meno a caso, in sti giorni aggiungo contenuto, grazie:)
Alice e Bob i migliori :myeah:
Messaggio unito automaticamente:

Ho aggiornato, nei prossimi giorni credo che aggiungerò qualcos'altro :)