Scansione porte con Nmap: elenco dei comandi Nmap

Nmap è il miglior strumento di rilevamento host e scansione delle porte oggi disponibile. Nmap ci consentirà di ottenere una grande quantità di informazioni sui computer sulla nostra rete, è in grado di scansionare quali host sono attivi e persino controllare se hanno porte aperte, se stanno filtrando le porte (hanno un firewall attivato) e persino sapere quale sistema operativo sta utilizzando un determinato target. Vuoi sapere tutto su Nmap e come usarlo? In questo articolo spieghiamo tutto ciò che devi sapere su questo strumento.

Caratteristiche principali

Nmap è un'utilità completamente gratuita e open source, che ci consente di scoprire reti e host, nonché eseguire controlli di sicurezza. Questo programma è compatibile con Linux, Windows e sistemi operativi macOS, ma in tutti viene utilizzato tramite la riga di comando, anche se abbiamo la possibilità di installare Mappa Zen, che è l'utilità grafica di Nmap per eseguire scansioni delle porte dell'interfaccia utente grafica. Se non vuoi combattere con i comandi attraverso la console, questa interfaccia utente grafica potrebbe essere utile per i primi passi con questo ottimo programma, tuttavia, quando avrai più esperienza, eseguirai sicuramente tutti i comandi direttamente dal terminale.

Scansione porte con Nmap

Nmap ci permette di rilevare host su una rete locale, e anche tramite Internet, in questo modo possiamo sapere se questi host (computer, server, router, switch, IoT dispositivi) sono attualmente connessi a Internet o alla rete locale. Questo strumento ci consente anche di eseguire una scansione delle porte sui diversi host, vedere quali servizi abbiamo attivi in ​​detti host grazie al fatto che ci dirà lo stato delle loro porte, possiamo sapere quale sistema operativo sta utilizzando un determinato computer e possiamo anche automatizzare diversi test pentesting per verificare la sicurezza delle apparecchiature.

Nmap ha diversi tipi di scansione delle porte, possono essere tramite segmenti TCP, datagrammi UDP o pacchetti ICMP, inoltre, permette di eseguire scansioni in modo nascosto in modo che siano difficili da rilevare dai firewall. Naturalmente, saremo in grado di eseguire la scansione delle porte su alcune porte specifiche, tra intervalli di porte, intervalli di indirizzi IP, possibilità di utilizzare pacchetti TCP null, FIN, Xmas e ACK oltre a SYN, per individuare le porte TCP aperte.

Altre caratteristiche che questo strumento ci offre è la possibilità di creare un inventario di rete completo e persino di controllare se un determinato host o servizio è ancora attivo e funzionante. Questo programma è stato progettato per scansionare un gran numero di host, quindi se devi scansionare più target non avrai problemi. Questo programma è molto flessibile, incorpora dozzine di tecniche avanzate per scansionare host e porte, inoltre, consente anche audit tramite NSE (Nmap Search Engine), quindi è davvero potente.

Nmap ha vari stati sulle porte che appariranno quando eseguiremo una scansione delle porte. È essenziale sapere cosa significa ogni stato di Nmap, perché con qualsiasi scansione delle porte, restituirà stati diversi.

Stato della porta con Nmap

  • Apri - Un'applicazione accetta attivamente connessioni TCP o UDP. La porta è aperta e può essere utilizzata, i pentester potranno utilizzare questa porta aperta per sfruttare il sistema. È lo stato predefinito se non disponiamo di un firewall che blocca l'accesso.
  • Chiuso : Una porta chiusa è accessibile perché risponde a Nmap, tuttavia non ci sono applicazioni in esecuzione su quella porta. È utile per scoprire che un host è attivo o come parte del rilevamento di un sistema operativo. Per l'amministratore di sistema, si consiglia di filtrare queste porte con il firewall in modo che non siano accessibili. Per quanto riguarda il pentester, è consigliabile lasciare queste porte “chiuse” per analizzarle successivamente, nel caso in cui inseriscano un nuovo servizio.
  • Filtrato : In questo stato Nmap non può determinare se la porta è aperta, perché c'è un firewall che filtra i pacchetti Nmap su quella porta. Queste porte filtrate sono quelle che appariranno quando avremo attivato un firewall. Nmap proverà ripetutamente a connettersi, il che rende la scansione delle porte piuttosto lenta.
  • Apri | Filtrato : Nmap non sa se la porta è aperta o filtrata. Ciò si verifica perché la porta aperta non invia alcuna risposta e questa mancanza di risposta potrebbe provenire dal firewall. Questo stato appare quando usiamo UDP e IP, e usiamo scansioni FIN, NULL e Xmas.
  • Chiuso | Filtrato : in questo stato non si sa se la porta è chiusa o filtrata. Questo stato viene utilizzato solo in IP Idle Scan.

Una volta viste le caratteristiche principali di Nmap e lo stato delle porte che abbiamo a disposizione, lo installeremo e lo utilizzeremo.

Scarica e installa Nmap su qualsiasi sistema

La prima cosa che dobbiamo fare per utilizzare questo potente programma è scaricarlo e quindi installarlo. Nel Sezione download di Nmap puoi trovare tutti i collegamenti, i binari e il codice sorgente per l'installazione nei sistemi operativi Windows, Linux e MacOS. Al momento abbiamo questo programma disponibile in tutti i repository dei sistemi operativi basati su Linux, quindi la sua installazione è davvero semplice. Abbiamo installato questo programma in Ubuntu, ma semplicemente eseguendo il comando di installazione del tuo sistema operativo seguito da “nmap”, installerai il programma senza difficoltà.

sudo apt install nmap

Una volta installato possiamo usarlo da un terminale, sia in Windows, Linux o macOS. In tutti gli esempi che ti forniremo di seguito, abbiamo utilizzato il sistema operativo Ubuntu, ma abbiamo gli stessi comandi disponibili per Windows e macOS, senza alcuna modifica.

Esempi di utilizzo di Nmap

Scansione rapida delle porte

Se desideri eseguire una scansione rapida delle porte su un host specifico, dobbiamo digitare il seguente comando.

nmap [ip]

Ad esempio, se vogliamo eseguire una scansione rapida delle porte principali su un host con indirizzo IP 192.168.1.2, l'ordine sarà il seguente:

nmap 192.168.1.2

Il programma restituirà le porte aperte sul computer di destinazione.

puertosnmap_foto_2

Scansiona una serie di porte

Invece di scansionare tutte le porte, possiamo impostare un intervallo di porte da controllare. Per questo eseguiremo:

nmap -p [rango] [ip]

Se vogliamo eseguire una scansione delle porte da TCP 20 a TCP 200 all'indirizzo IP 192.168.1.2, basta eseguire il seguente comando:

nmap -p 20-200 192.168.1.2

Il programma indicherà all'interno di tale intervallo quali porte sono aperte.

puertosnmap_foto_3

Rileva il sistema operativo e più dati host

Possiamo dire a Nmap di rilevare il sistema operativo. Lo fa inviando pacchetti e analizzando il modo in cui li restituisce, essendo totalmente diverso in ogni sistema. Insieme a questo, eseguirà una scansione delle porte e dei servizi per le vulnerabilità. Inoltre, la scansione restituirà informazioni utili. Per questo dobbiamo eseguire:

nmap -A -v [ip]

Se vogliamo eseguire questa scansione all'indirizzo IP 192.168.1.2 possiamo eseguire il seguente comando:

nmap -A -v 192.168.1.2

puertosnmap_foto_4

Elenco di tutti i comandi s

Questo programma è davvero completo, finora abbiamo utilizzato i comandi di base per scoprire gli host e anche per vedere se ha porte aperte, tuttavia, questo non rimane così e abbiamo un ampio elenco di comandi per sfruttare al meglio questo attrezzo.

Seleziona gli obiettivi

Indirizzi o intervalli IP, nomi di sistemi, reti, ecc.

  • Esempio: scanme.nmap.org, microsoft.com/24, 192.168.0.1, 10.0.0-255.1-254
  • -iL elenco dei file nel file -iR n sceglie gli obiettivi in ​​modo casuale, 0 non finisce mai
  • –Exclude –excludefile file esclude i sistemi dal file

Scopri i sistemi

  • -PS n tcp sincronizzazione ping
  • -PA n ping TCP ACK
  • -PU nping UDP
  • -PM Maschera di rete richiesta
  • -PP Timestamp Rich
  • -PE Eco Rich
  • -analisi della lista SL
  • -PO ping per protocollo
  • -PN Non eseguire il ping
  • -Non fare DNS
  • -R Risolvi DNS su tutti i sistemi di destinazione
  • –Traceroute: traccia percorso verso il sistema (per topologie di rete)
  • -sP ping, come –PP –PM –PS443 –PA80

Tecniche di analisi portuale

  • -sS analizza utilizzando TCP SYN
  • -sT analisi utilizzando TCP CONNECT
  • -sU analisi utilizzando UDP
  • -s AND analisi utilizzando SCTP INIT
  • -sZ utilizzando COOKIE ECHO da SCTP
  • -sO protocollo IP
  • -sW Finestra TCP -sN
  • –SF -sX NULLO, FIN, NATALE
  • –SA ACK TCP

Porte da analizzare e ordine di analisi

  • -p n-mrango
  • -p– tutte le porte
  • -pn, m, z specificato
  • -p U: nm, z T: n, m U per UDP, T per TCP
  • -F veloce, il comune 100
  • –Top-ports n analizza le porte più utilizzate
  • -r non casuale

Durata ed esecuzione:

  • -T0 paranoico
  • -T1 invisibile
  • -T2 sofisticato
  • -T3 normale
  • -T4 aggressivo
  • -T5 follia
  • –Gruppo host minimo
  • –Max-gruppo host
  • –Valore minimo
  • –Tasso massimo
  • –Min-parallelismo
  • –Parallelismo massimo
  • –min-rtt-timeout
  • –max-rtt-timeout
  • –Timeout-rtt-iniziale
  • –Tentativi max
  • –host-timeout –scan-delay

Rilevamento del servizio e della versione

  • -sV: rilevamento della versione dei servizi
  • –Tutte le porte non escludono le porte
  • –Version-all verifica ogni scansione
  • –Attività di analisi della versione della traccia di versione
  • -Oppure attiva il rilevamento del sistema operativo
  • –Fuzzy indovina il rilevamento del sistema operativo
  • –Max-os-try imposta il numero massimo di tentativi sul sistema di destinazione

Firewall/evasione IDS

  • -f pacchetti di frammenti
  • -D d1, d2 analisi mantello con esche
  • -S IP spoofing indirizzo sorgente
  • –G source porta di origine falsa
  • –Randomize-host order
  • –Spoof-mac mac cambia origine MAC

Livello di dettaglio e parametri di debug

  • -v Aumenta il livello di dettaglio
  • - Motivi del motivo per sistema e porta
  • -d (1-9) imposta il livello di debug
  • –Packet-trace percorso del pacchetto

Altre opzioni

  • –Riprendi analisi continua file interrotta (prendendo formati di output con -oN o -oG)
  • -6 abilita la scansione IPV6
  • -A aggressivo, come -O -sV -sC –traceroute

Opzioni interattive

  • v / V aumenta / diminuisce il livello di dettaglio dell'analisi
  • d / D aumenta / diminuisce il livello di debug
  • p / P abilita / disabilita la traccia dei pacchetti

Script

  • -sC esegue l'analisi con gli script predefiniti
  • –Script file di esecuzione script (o tutti)
  • –Script-args n = v fornisce argomenti
  • –Script-trace mostra la comunicazione in entrata e in uscita

Formati di output

  • -oN salvare in formato normale
  • -oX salva in formato XML
  • -oG salva in formato per utilizzare successivamente Grep
  • -oA salva in tutti i formati precedenti

Questi sono principalmente i comandi disponibili per Nmap. Prima di concludere, dobbiamo dire che Nmap ha una moltitudine di opzioni con cui eseguire analisi di rete complete. Possiamo consultare tutte le opzioni disponibili digitando:

nmap --help

puertosnmap_foto_5

Nmap è indubbiamente uno strumento molto semplice e completo per eseguire audit di rete, ma non finisce qui, abbiamo anche Nmap NSE a disposizione per eseguire pentesting avanzato.

Nmap NSE: cos'è ea cosa serve

Nmap Search Engine o noto anche come Nmap NSE, è un grande database con migliaia di script che ci consentiranno di automatizzare il pentesting su sistemi e reti. Questo set di script ci consentirà di automatizzare molte azioni, come eseguire attacchi di forza bruta su server Samba, server FTP, server SSH, controllare se un server web ha una vulnerabilità nota e molto altro.

Ad esempio, se vogliamo eseguire un attacco di forza bruta, basato su un elenco di utenti (con un file chiamato users.txt) e un elenco di password da testare (con un file chiamato keys.txt) a un server SSH di un certo computer che ha l'IP 99.99.99.99, possiamo mettere il seguente comando:

nmap -p 22 --script ssh-brute --script-args userdb=usarios.txt,passdb=claves.txt --script-args ssh-brute.timeout=4s 99.99.99.99

Ti consigliamo di visitare il sito ufficiale di NSE dove troverai tutti gli script che sono attualmente in questo grande database, inoltre, avrai esempi di come usarli.