Basi

Usare NMAP : Troviamo porte e servizi attivi sul nostro bersaglio.

NMAP : Focalizziamoci sul bersaglio

NMAP e la scelta del bersaglio. Dopo aver fatto una prima ricognizione sugli indirizzi ip “vivi”, dobbiamo focalizzare l’attenzione su uno o più bersagli e capire quali servizi espongono, che sistema operativo usano, se sono degli Iot o Stampanti etc etc.

La prima ricognizione viene effettuata sulle porte che dovrebbero e potrebbero esporre  servizi standard.

Se utilizziamo sistemi Linux possiamo vedere quali sono i servizi/porte standard con un semplice.

cat /etc/services

root@unassigned-hostname:~# cat /etc/services

tcpmux 1/tcp # TCP port service multiplexer
echo 7/tcp
echo 7/udp
discard 9/tcp sink null
discard 9/udp sink null
systat 11/tcp users
daytime 13/tcp
daytime 13/udp
netstat 15/tcp
qotd 17/tcp quote
etc etc .. e’ una lista abbastanza lunga.

Ma fate attenzione: non è detto che sulla porta 443  (https 443/tcp # http protocol over TLS/SSL) ci sia sempre hhtp protocol, potrei utilizzare quella porta per SSH o per qualsiasi altro servizio!

Usare NMAP Troviamo porte e servizi attivi sul nostro bersaglio.
Usare NMAP Troviamo porte e servizi attivi sul nostro bersaglio.

Scansione di porte e servizi

Una volta che avete identificato un host attivo, potete tentare di identificare le porte e i servizi in esecuzione su quel host. Si può fare eseguendo la scansione delle porte.

Avere la possibilità di conoscere le porte e i servizi “aperti” aiuta ad investigare ulteriormente sulle vulnerabilità che possono essere possibili punti di ingresso nel sistema. La scansione delle porte invia una richiesta per sollecitare una risposta dalle porte su un computer di destinazione. Ci sono molti diversi tipi di tecniche di scansione delle porte.

La maggior parte di esse può essere vagamente categorizzata come seguenti:

Connect scan. Le scansioni di connessione eseguono un completo handshake TCP a tre vie e aprono una connessione all’obiettivo. Queste scansioni sono facilmente rilevate e spesso registrate dall’host. Se una porta TCP è in ascolto e non firewalled risponderà con un pacchetto SYN/ACK, altrimenti l’host risponde con un pacchetto RST/ACK.

Half-open scan.Una scansione semiaperta: non completa l’handshake TCP a tre vie. Viene anche chiamata scansione SYN. Con una scansione semiaperta, quando lo scanner riceve un SYN/ACK dall’host di destinazione, che implica una porta aperta sulla destinazione, lo scanner interrompe immediatamente la connessione con un RST. Questo tipo di scansione era considerato una scansione furtiva perché la connessione non veniva completata e quindi non veniva registrata dall’host; tuttavia è facilmente rilevabile dai sistemi di rilevamento delle intrusioni.

Stealth scans. Le scansioni furtive usano varie impostazioni di flag, frammentazione e altri tipi di tecniche di evasione per passare inosservate. Alcuni esempi sono una scansione SYN/ACK, una scansione FIN, una scansione ACK, una scansione NULL e una scansione XMAS (Christmas Tree).

 

E quindi ?

La scansione delle porte sollecita una varietà di risposte impostando diverse porte TCP o inviando pacchetti UDP con vari parametri. Sia TCP che UDP hanno 65.536 porte possibili (da 0 a 65.535). Puoi scansionarle tutte o un sottoinsieme, come le porte usate più comunemente. Per esempio, è di routine scansionare le porte ben note sotto la 1024 che sono associate a servizi comuni come FTP, SSH, Telnet, SMTP, DNS e HTTP.
Una volta scoperta una porta, uno scanner può eseguire un esame aggiuntivo per determinare la versione effettiva del servizio in esecuzione sulla porta aperta. Come per l’host la scansione delle porte è anche soggetta all’intervento di router e firewall, quindi le risposte delle porte possono essere rifiutate. Inoltre, alcuni sistemi operativi potrebbero non soddisfare le richieste e far cadere il pacchetto.

Ma è tutto sempre così eleatorio ?  Si, per questo conta tanto l’esperienza !

Prossimo passo :

Rilevamento del sistema operativo

Il rilevamento del sistema operativo, chiamato anche fingerprinting, è usato per determinare il tipo di sistema operativo che è in esecuzione sul target. Il fingerprinting può essere eseguito sia attivamente che passivamente.

Con il fingerprinting attivo, lo scanner di rete invia diversi pacchetti al bersaglio con varie impostazioni. Le risposte alle impostazioni vengono analizzate e confrontate con un elenco di valori di richiesta/risposta noti per trovare una corrispondenza. I sistemi operativi sono tutti costruiti con caratteristiche di identificazione all’interno dei loro stack e configurazioni TCP/IP. Questo include impostazioni come la dimensione della finestra TCP e i numeri di sequenza iniziale TCP.

Il fingerprinting passivo guarda anche alle deviazioni nelle implementazioni dello stack TCP/IP; tuttavia cerca queste deviazioni analizzando il traffico sulla rete. Il fingerprinting passivo non invia alcun pacchetto all’obiettivo; monitora passivamente le comunicazioni dell’obiettivo.

Come è stato detto…

Rilevamento del sistema operativo

Una delle caratteristiche più conosciute di Nmap è il rilevamento del sistema operativo remoto usando il fingerprinting dello stack TCP/IP. Nmap invia una serie di pacchetti TCP e UDP all’host remoto ed esamina praticamente ogni bit nelle risposte. Dopo aver eseguito dozzine di test come il campionamento dell’ISN TCP, il supporto e l’ordine delle opzioni TCP, il campionamento dell’ID IP e il controllo iniziale della dimensione della finestra, Nmap confronta i risultati con il suo database nmap-os-db di più di 2.600 impronte OS note e stampa i dettagli del sistema operativo se c’è una corrispondenza.

Ogni impronta digitale include una descrizione testuale libera del sistema operativo e una classificazione che fornisce il nome del fornitore (ad esempio Sun), il sistema operativo sottostante (ad esempio Solaris), la generazione del sistema operativo (ad esempio 10) e il tipo di dispositivo (generico, router, switch, console di gioco, ecc). La maggior parte delle impronte digitali hanno anche una rappresentazione CPE (Common Platform Enumeration), come cpe:/o:linux:linux_kernel:2.6.

Se Nmap non è in grado di identificare il sistema operativo di una macchina, e le condizioni sono buone (ad esempio, sono state trovate almeno una porta aperta e una porta chiusa), Nmap fornirà un URL che si può utilizzare per inviare l’impronta digitale se si conosce (con certezza) il sistema operativo in esecuzione sulla macchina. Facendo questo si contribuisce al pool di sistemi operativi conosciuti da Nmap e quindi sarà più accurato per tutti.

Cosa innesca?

Il rilevamento del sistema operativo abilita alcuni altri test che fanno uso di informazioni che vengono comunque raccolte durante il processo. Uno di questi è TCP Sequence Predictability Classification. Questo misura approssimativamente quanto sia difficile stabilire una connessione TCP falsificata contro l’host remoto. È utile per sfruttare le relazioni di fiducia basate sul source-IP (rlogin, filtri firewall, ecc.) o per nascondere la fonte di un attacco. Questo tipo di spoofing viene eseguito raramente, ma molte macchine sono ancora vulnerabili ad esso. Il numero di difficoltà reale è basato su un campionamento statistico e può fluttuare. In genere è meglio usare la classificazione inglese come “sfida degna” o “scherzo banale”. Questo viene riportato nell’output normale solo in modalità verbose (-v). Quando la modalità verbosa è abilitata insieme a -O, viene riportata anche la generazione della sequenza di ID IP. La maggior parte delle macchine sono nella classe “incrementale”, il che significa che incrementano il campo ID nell’intestazione IP per ogni pacchetto che inviano. Questo li rende vulnerabili a diversi attacchi avanzati di raccolta di informazioni e spoofing.

Un’altra informazione extra abilitata dal rilevamento del sistema operativo è un’ipotesi sul tempo di attività dell’obiettivo. Questo utilizza l’opzione TCP timestamp (RFC 1323) per indovinare quando una macchina è stata riavviata l’ultima volta. L’ipotesi può essere imprecisa a causa del contatore del timestamp che non è inizializzato a zero o il contatore trabocca e si avvolge, quindi viene stampato solo in modalità verbose.

Qualche parametro

 

Il rilevamento del sistema operativo è abilitato e controllato con le seguenti opzioni:

-O (Enable OS detection)

Abilita il rilevamento del sistema operativo, come discusso sopra. In alternativa, puoi usare -A per abilitare il rilevamento del SO insieme ad altre cose.

-osscan-limit (Limita il rilevamento del SO agli obiettivi promettenti)

Il rilevamento del sistema operativo è molto più efficace se vengono trovate almeno una porta TCP aperta e una chiusa. Imposta questa opzione e Nmap non proverà nemmeno a rilevare il sistema operativo contro gli host che non soddisfano questo criterio. Questo può far risparmiare molto tempo, in particolare nelle scansioni -Pn contro molti host. Ha importanza solo quando il rilevamento del sistema operativo è richiesto con -O o -A.

–osscan-guess; –fuzzy (Indovina i risultati del rilevamento del SO)

Quando Nmap non è in grado di rilevare una perfetta corrispondenza del sistema operativo, a volte offre quasi corrispondenze come possibilità. La corrispondenza deve essere molto vicina perché Nmap lo faccia di default. Entrambe queste opzioni (equivalenti) rendono Nmap più aggressiva. Nmap ti dirà comunque quando viene stampata una corrispondenza imperfetta e mostrerà il suo livello di confidenza (percentuale) per ogni tentativo.

–max-os-tries (Imposta il numero massimo di tentativi di rilevamento del sistema operativo contro un obiettivo)

Quando Nmap esegue il rilevamento del sistema operativo contro un obiettivo e non riesce a trovare una corrispondenza perfetta, di solito ripete il tentativo. Per impostazione predefinita, Nmap prova cinque volte se le condizioni sono favorevoli per l’invio dell’impronta del sistema operativo, e due volte quando le condizioni non sono così buone. Specificando un valore più basso di –max-os-tries (come 1) si velocizza Nmap, anche se si perdono i tentativi che potrebbero potenzialmente identificare il sistema operativo. In alternativa, un valore alto può essere impostato per permettere ancora più tentativi quando le condizioni sono favorevoli. Questo viene fatto raramente, tranne che per generare migliori impronte digitali per l’invio e l’integrazione nel database di Nmap OS.

 

Usare Nmap : tool potentissimo per il Penetration Testing Scanner.

Come Usare NMAP potrebbe sembrare semplice: Host Discovery. 

Usare NMAP : Troviamo porte e servizi attivi sul nostro bersaglio.

NMAP VS Firewall : Si tenta sempre ! Vediamo come.

Nmap port scanning: Facile dire aperta e chiusa.

Sintassi nmap, volume 1 : possibili tipi di scansione.

Sintassi nmap volume 2 : possibili tipi di scansione.

 

 

Se ritieni questo articolo interessante, seguimi su  Facebook o Twitter o Telegram per poter essere informato su i nuovi contenuti proposti.

Key : Connect scan, Cybersecurity, cybersicurezza, fingerprinting, hacking, Half-open scan, nmap, penetration test, penetration testing, Penetration Testing Scanner, Stealth scans, Usare Nmap, vulnerability