La guida completa a Nmap – Tutorial Nmap

Condividi questo articolo:


Nmap è uno degli strumenti più comunemente usati dagli hacker etici. La sua facilità d’uso e la sua installazione pulita, insieme alle potenti opzioni di scansione, aumenta la sua popolarità. Questo tutorial di nmap vi offre una comprensione completa dello strumento e vi insegna come eseguire scansioni avanzate da soli.

Che cos’è Nmap?

Nmap, abbreviazione di Network Mapper, è uno strumento per la scoperta della rete e la verifica della sicurezza. È noto per i suoi comandi semplici e facili da ricordare che forniscono potenti opzioni di scansione. Nmap è ampiamente utilizzato dagli amministratori di rete

Scoprire porte e servizi “aperti” con nMap

Nmap è utile nel caso vogliate:

  • Scoprire i servizi presenti su un sistema operativo e relative versioni
  • Scoprire il sistema operativo che gira su una macchina di destinazione
  • Ottenere percorsi accurati dei pacchetti fino alla macchina di destinazione
  • Monitoraggio degli host

Secondo il sito ufficiale di Nmap –

Nmap è un'utilità gratuita e open source per la scoperta della rete e il controllo della sicurezza. Molti sistemi e amministratori di rete la trovano utile anche per compiti come l'inventario della rete, la gestione dei programmi di aggiornamento dei servizi e il monitoraggio dell'host o dell'uptime dei servizi. Nmap utilizza i pacchetti IP grezzi in modi nuovi per determinare quali host sono disponibili sulla rete, quali servizi (nome e versione dell'applicazione) offrono, quali sistemi operativi (e versioni del sistema operativo) sono in esecuzione, che tipo di filtri/firewall di pacchetti sono in uso e decine di altre caratteristiche. È stato progettato per scansionare rapidamente reti di grandi dimensioni, ma funziona bene contro i singoli host.

Andiamo avanti in questo tutorial nmap e discutiamo i vari tipi di scansioni.

La guida ufficiale a nMap (ebook gratuito)

Nmap Network Scanning è la guida ufficiale di Nmap Security Scanner, una utility gratuita e open source usata da milioni di persone per la scoperta della rete, l’amministrazione e la verifica della sicurezza. Dalla spiegazione delle basi della scansione delle porte per i novizi ai dettagli dei metodi di creazione di pacchetti di basso livello usati dagli hacker avanzati, questo libro è adatto a tutti i livelli di sicurezza e ai professionisti della rete. Una guida di riferimento di 42 pagine documenta ogni caratteristica e opzione di Nmap, mentre il resto del libro dimostra come applicare queste caratteristiche per risolvere rapidamente i compiti del mondo reale. Esempi e diagrammi mostrano la comunicazione reale sul filo.

Pagina ufficiale: https://nmap.org/book/

Gli argomenti includono il sovvertimento dei firewall e dei sistemi di rilevamento delle intrusioni, l’ottimizzazione delle prestazioni di Nmap e l’automazione delle comuni attività di rete con il motore di scripting di Nmap. Suggerimenti e istruzioni sono forniti per usi comuni come l’inventario della rete, i test di penetrazione, il rilevamento di punti di accesso wireless disonesti, e l’eliminazione di epidemie di worm di rete. Nmap funziona su Windows, Linux e Mac OS X.

L’autore originale di Nmap, Gordon “Fyodor” Lyon, ha scritto questo libro per condividere tutto ciò che ha imparato sulla scansione di rete durante più di un decennio di sviluppo di Nmap. Per un breve periodo è stato il libro di computer più venduto su Amazon (screenshot). Il libro è in inglese, anche se diverse traduzioni sono in lavorazione.

Fatti chiave: L’ISBN è 978-0-9799587-1-7 (ISBN-10 è 0-9799587-1-7) e i prezzi al dettaglio suggeriti sono $49,95 negli Stati Uniti, £34,95 nel Regno Unito e €39,95 in Europa. Come la maggior parte dei libri, costa meno online (a partire da 32,97 dollari – vedi opzioni di acquisto). È lungo 468 pagine. La data ufficiale di uscita era il 1 gennaio 2009, anche se Amazon è riuscito a batterlo di un paio di settimane.

Circa la metà del contenuto è disponibile nell’edizione online gratuita. I capitoli esclusivi dell’edizione cartacea includono “Rilevare e sovvertire i firewall e i sistemi di rilevamento delle intrusioni”, “Ottimizzare le prestazioni di Nmap”, “Tecniche e algoritmi di scansione delle porte”, “Scoperta dell’host (Ping Scanning)” e altro. Le selezioni di soluzioni che forniscono istruzioni dettagliate sul modo migliore per risolvere compiti di rete comuni sono anche esclusive del libro stampato. L’indice finale e la copertina sono disponibili.

 

Tipi di scansione nmap

È possibile eseguire una varietà di scansioni utilizzando Nmap. Di seguito sono riportati i tipi di scansioni:

LEGGI ANCHE:  Questo semplice hack di WhatsApp comprometterà il tuo account: Ecco cosa devi fare ora

SCANSIONE TCP

Una scansione TCP viene generalmente utilizzata per controllare e completare una stretta di mano a tre tra voi e un sistema target scelto. Una scansione TCP è generalmente molto rumorosa e può essere rilevata con uno sforzo quasi nullo. Questo è “rumoroso” perché i servizi possono registrare l’indirizzo IP del mittente e potrebbero attivare i sistemi di rilevamento delle intrusioni.

SCAN UDP

Le scansioni UDP sono utilizzate per controllare se c’è una porta UDP attiva e in ascolto per le richieste in arrivo sulla macchina di destinazione. A differenza del TCP, l’UDP non ha un meccanismo per rispondere con un riconoscimento positivo, quindi c’è sempre la possibilità di un falso positivo nei risultati della scansione. Tuttavia, le scansioni UDP sono utilizzate per rivelare cavalli di Troia che potrebbero essere in esecuzione su porte UDP o addirittura rivelare servizi RPC nascosti. Questo tipo di scansione tende ad essere piuttosto lento perché le macchine, in generale, tendono a rallentare le loro risposte a questo tipo di traffico come misura precauzionale.

SYN SCAN

Questa è un’altra forma di scansione TCP. La differenza è che, a differenza di una normale scansione TCP, nmap crea un pacchetto syn, che è il primo pacchetto che viene inviato per stabilire una connessione TCP. Ciò che è importante notare qui è che la connessione non viene mai formata, piuttosto le risposte a questi pacchetti appositamente creati vengono analizzate da Nmap per produrre risultati di scansione.

ACK SCAN

Le scansioni ACK vengono utilizzate per determinare se una particolare porta è filtrata o meno. Questo si rivela estremamente utile quando si cerca di sondare i firewall e il loro insieme di regole esistenti. Un semplice filtraggio dei pacchetti consentirà le connessioni stabilite (pacchetti con il set di bit ACK), mentre un firewall stateful più sofisticato potrebbe non farlo.

FIN SCAN

Anche una scansione furtiva, come la scansione SYN, ma invia invece un pacchetto TCP FIN. La maggior parte dei computer, ma non tutti, inviano un pacchetto RST (pacchetto di reset) se ricevono questo input, quindi la scansione FIN può mostrare falsi positivi e negativi, ma può essere sotto il radar di alcuni programmi IDS e altre contromisure.

NULL SCAN

Le scansioni nulle sono estremamente furtive e ciò che fanno è come suggerisce il nome: impostano tutti i campi dell’intestazione su null. Generalmente, questo non è un pacchetto valido e alcuni bersagli non sapranno come trattare un tale pacchetto. Tali target sono generalmente alcune versioni di Windows e la scansione con pacchetti NULL può finire per produrre risultati inaffidabili. D’altra parte, quando un sistema non esegue windows, questo può essere usato come un modo efficace per passare.

 

XMAS SCAN

Proprio come le scansioni nulle, anche queste sono di natura furtiva. I computer che eseguono finestre non risponderanno alle scansioni di Natale a causa del modo in cui il loro stack TCP è implementato. La scansione deriva il suo nome dall’insieme di flag che vengono accesi all’interno del pacchetto che viene inviato per la scansione. Le scansioni XMAS sono usate per manipolare i flag PSH, URG e FIN che si trovano nell’intestazione TCP.

SCANSIONE RPC

Le scansioni RPC sono utilizzate per scoprire le macchine che rispondono ai servizi di Remote Procedure Call (RPC). L’RPC consente di eseguire comandi su una certa macchina in remoto, sotto un certo set di connessioni. Il servizio RPC può essere eseguito su una serie di porte diverse, quindi diventa difficile dedurre da una normale scansione se i servizi RPC sono in esecuzione o meno. In genere è una buona idea eseguire una scansione RPC di tanto in tanto per scoprire dove sono in esecuzione questi servizi.

IDLE SCAN

La scansione IDLE è la più furtiva di tutte le scansioni discusse in questo tutorial nmap, poiché i pacchetti vengono rimbalzati su un host esterno. Il controllo sull’host non è generalmente necessario, ma l’host deve soddisfare un insieme specifico di condizioni. Si tratta di una delle opzioni più controverse in Nmap, poiché ha un uso solo per gli attacchi malevoli.

Perché usare Nmap?

Ci sono diverse ragioni per cui i professionisti della sicurezza preferiscono Nmap rispetto ad altri strumenti di scansione.

In primo luogo, Nmap aiuta a mappare rapidamente una rete senza comandi o configurazioni sofisticate. Supporta anche comandi semplici (per esempio, per controllare se un host è attivo) e script complessi attraverso il motore di scripting Nmap.

Altre caratteristiche di Nmap includono:

  • Capacità di riconoscere rapidamente tutti i dispositivi tra cui server, router, switch, dispositivi mobili, ecc su reti singole o multiple.
  • Aiuta a identificare i servizi in esecuzione su un sistema tra cui server web, server DNS e altre applicazioni comuni. Nmap può anche rilevare le versioni delle applicazioni con ragionevole precisione per aiutare a rilevare le vulnerabilità esistenti.
  • Nmap può trovare informazioni sul sistema operativo in esecuzione sui dispositivi. Può fornire informazioni dettagliate come le versioni del sistema operativo, rendendo più facile pianificare approcci aggiuntivi durante i test di penetrazione.
  • Durante la verifica della sicurezza e la scansione delle vulnerabilità, è possibile utilizzare Nmap per attaccare i sistemi utilizzando gli script esistenti da Nmap Scripting Engine.
LEGGI ANCHE:  Come eseguire un attacco man-in-the-middle usando Ettercap in Kali Linux

Nmap ha un’interfaccia utente grafica chiamata Zenmap. Ti aiuta a sviluppare mappature visive di una rete per una migliore usabilità e reportistica.

Comandi di Nmap

Vediamo alcuni comandi di Nmap:

Scansioni di base

La scansione dell’elenco dei dispositivi attivi su una rete è il primo passo nella mappatura della rete. Ci sono due tipi di scansioni che puoi usare per questo:

Ping scan – Scansiona l’elenco dei dispositivi attivi e funzionanti su una data subnet.

> nmap -sp 192.168.1.1/24

Scansione di un singolo host – Scansiona un singolo host per 1000 porte note. Queste porte sono quelle usate da servizi popolari come SQL, SNTP, apache e altri.

> nmap scanme.nmap.org

Scansione furtiva

La scansione furtiva viene eseguita inviando un pacchetto SYN e analizzando la risposta. Se viene ricevuto SYN/ACK, significa che la porta è aperta e si può aprire una connessione TCP.

Tuttavia, una scansione furtiva non completa mai la stretta di mano a 3 vie, il che rende difficile per l’obiettivo determinare il sistema di scansione.

nmap -sS scanme.nmap.org

Puoi usare il comando ‘-sS’ per eseguire una scansione furtiva. Ricorda che la scansione stealth è più lenta e non così aggressiva come gli altri tipi di scansione, quindi potresti dover aspettare un po’ per ottenere una risposta.

Scansione della versione

Trovare le versioni delle applicazioni è una parte cruciale nei test di penetrazione.

Rende la vita più facile, poiché è possibile trovare una vulnerabilità esistente dal database Common Vulnerabilities and Exploits (CVE) per una particolare versione del servizio. Si può quindi utilizzare per attaccare una macchina utilizzando uno strumento di sfruttamento come Metasploit.

nmap -sV scanme.nmap.org

Per fare una scansione della versione, usa il comando ‘-sV’. Nmap fornirà una lista di servizi con le loro versioni. Tenete a mente che le scansioni delle versioni non sono sempre accurate al 100%, ma vi porta un passo più vicini ad entrare con successo in un sistema.

Scansione del sistema operativo

Oltre ai servizi e alle loro versioni, Nmap può fornire informazioni sul sistema operativo sottostante utilizzando il TCP/IP fingerprinting. Nmap cercherà anche di trovare il tempo di attività del sistema durante una scansione del sistema operativo.

nmap -sV scanme.nmap.org

È possibile utilizzare i flag aggiuntivi come osscan-limit per limitare la ricerca a pochi obiettivi attesi. Nmap mostrerà la percentuale di confidenza per ogni OS ipotizzato.

Ancora una volta, il rilevamento del sistema operativo non è sempre accurato, ma va molto avanti nell’aiutare un pen tester ad avvicinarsi al suo obiettivo.

Scansione aggressiva

Nmap ha una modalità aggressiva che abilita il rilevamento del sistema operativo, il rilevamento della versione, la scansione degli script e il traceroute. Puoi usare l’argomento -A per eseguire una scansione aggressiva.

nmap -A scanme.nmap.org

Le scansioni aggressive forniscono informazioni molto migliori delle scansioni regolari. Tuttavia, una scansione aggressiva invia anche più sonde, ed è più probabile che venga rilevata durante i controlli di sicurezza.

Scansione di più host

Nmap ha la capacità di scansionare più host simultaneamente. Questa caratteristica è molto utile quando si gestisce una vasta infrastruttura di rete.

È possibile eseguire la scansione di più host attraverso numerosi approcci:

Scrivi tutti gli indirizzi IP in una singola riga per scansionare tutti gli host allo stesso tempo.

> nmap 192.164.1.1 192.164.0.2 192.164.0.2

Usa l’asterisco (*) per scansionare tutte le sottoreti contemporaneamente.

> nmap 192.164.1.*

Aggiungi delle virgole per separare le terminazioni degli indirizzi invece di digitare i domini interi.

> nmap 192.164.0.1,2,3,4

Usa un trattino per specificare un intervallo di indirizzi IP

> nmap 192.164.0.0-255

Scansione delle porte

La scansione delle porte è una delle caratteristiche fondamentali di Nmap. È possibile eseguire la scansione delle porte in diversi modi.

Scansione da un file

Se volete scansionare una grande lista di indirizzi IP, potete farlo importando un file con la lista di indirizzi IP.

nmap -iL /input_ips.txt

Il comando precedente produrrà i risultati della scansione di tutti i domini dati nel file “input_ips.txt”. Oltre alla semplice scansione degli indirizzi IP, è possibile utilizzare anche opzioni e flag aggiuntivi.

Verbosità ed esportazione dei risultati della scansione

I test di penetrazione possono durare giorni o addirittura settimane. Esportare i risultati di Nmap può essere utile per evitare lavoro ridondante e per aiutare nella creazione di rapporti finali. Vediamo alcuni modi per esportare i risultati della scansione Nmap.

Output verboso

> nmap -v scanme.nmap.org

L’output verboso fornisce informazioni aggiuntive sulla scansione in corso. E’ utile per monitorare passo dopo passo le azioni che Nmap esegue su una rete, specialmente se sei un esterno che scansiona la rete di un cliente.

LEGGI ANCHE:  Android e Malware : 4 segnali che vi aiutano a capire se siete stati infettati

Output normale

Le scansioni Nmap possono anche essere esportate in un file di testo. Sarà leggermente diverso dall’output originale della linea di comando, ma catturerà tutti i risultati essenziali della scansione.

> nmap -oN output.txt scanme.nmap.org

Output XML

Le scansioni Nmap possono anche essere esportate in XML. È anche il formato di file preferito dalla maggior parte degli strumenti di pen-testing, rendendolo facilmente analizzabile quando si importano i risultati della scansione.

> nmap -oX output.xml scanme.nmap.org

Formati multipli

Puoi anche esportare i risultati della scansione in tutti i formati disponibili in una volta sola usando il comando -oA.

nmap -oA output scanme.nmap.org

Il comando precedente esporterà il risultato della scansione in tre file – output.xml, output. Nmap e output.gnmap.

Aiuto di Nmap

Nmap ha un comando di aiuto integrato che elenca tutte le bandiere e le opzioni che puoi usare. E’ spesso utile dato il numero di argomenti della linea di comando con cui Nmap viene fornito.

> nmap -h

Motore di scripting Nmap

Nmap Scripting Engine (NSE) è uno strumento incredibilmente potente che puoi usare per scrivere script e automatizzare numerose funzioni di rete.

Puoi trovare un sacco di script distribuiti su Nmap, o scrivere il tuo script in base alle tue esigenze. È anche possibile modificare gli script esistenti utilizzando il linguaggio di programmazione Lua.

NSE ha anche script di attacco che vengono utilizzati per attaccare la rete e vari protocolli di rete.

Passare attraverso il motore di scripting in profondità sarebbe fuori portata per questo articolo, quindi ecco maggiori informazioni sul motore di scripting Nmap.

netmap scripting engine

Zenmap

Zenmap è un’interfaccia grafica per Nmap. È un software gratuito e open-source che ti aiuta a diventare operativo con Nmap.

Oltre a fornire mappature visive della rete, Zenmap ti permette anche di salvare e cercare le tue scansioni per un uso futuro.

Zenmap è ottimo per i principianti che vogliono testare le capacità di Nmap senza passare attraverso un’interfaccia a riga di comando.

Nmap è chiaramente il “coltellino svizzero” del networking, grazie al suo inventario di comandi versatili.

Consente di eseguire rapidamente la scansione e scoprire informazioni essenziali sulla vostra rete, host, porte, firewall e sistemi operativi.

Nmap ha numerose impostazioni, bandiere e preferenze che aiutano gli amministratori di sistema ad analizzare una rete in dettaglio.

Tabella riassuntiva dei comandi di Nmap

In questa sezione di Nmap Tutorial, elencherò i vari comandi che si possono usare in Nmap insieme al loro flag e alla descrizione dell’uso con un esempio su come usarlo.

Scanning Techniques

Flag Use Example
-sS TCP syn port scan nmap -sS 192.168.1.1
-sT TCP connect port scan nmap -sT 192.168.1.1
sU UDP port scan nmap –sU 192.168.1.1
sA TCP ack port scan nmap –sA 192.168.1.1

Host Discovery

Flag Use Example
-Pn only port scan nmap -Pn192.168.1.1
-sn only host discover nmap -sn192.168.1.1
-PR arp discovery on a local network nmap -PR192.168.1.1
-n disable DNS resolution nmap -n 192.168.1.1

Port Specification

Flag Use Example
-p specify a port or port range nmap -p 1-30 192.168.1.1
-p- scan all ports nmap -p- 192.168.1.1
-F fast port scan nmap -F 192.168.1.1

Service Version and OS Detection

Flag Use Example
-sV detect the version of services running nmap -sV 192.168.1.1
-A aggressive scan nmap -A 192.168.1.1
-O detect operating system of the target nmap -O 192.168.1.1

Timing and Performance

Flag Use Example
-T0 paranoid IDS evasion nmap -T0 192.168.1.1
-T1 sneaky IDS evasion nmap -T1 192.168.1.1
-T2 polite IDS evasion nmap -T2 192.168.1.1
-T3 normal IDS evasion nmap -T3 192.168.1.1
-T4 aggressive speed scan nmap -T4 192.168.1.1
-T5 insane speed scan nmap -T5 192.168.1.1

NSE Scripts

Flag Use Example
-sC default script scan nmap -sC 192.168.1.1
–script banner banner grabbing nmap –script banner 192.168.1.1

IDS Evasion

Flag Use Example
-f use fragmented IP packets nmap -f 192.168.1.1
-D decoy scans nmap -D 192.168.1.1
-g use a given source port number nmap -g 22 192.168.1.1

Questo ci porta alla fine di questo tutorial di Nmap. Per ulteriori informazioni sulla sicurezza informatica, potete dare un’occhiata ai miei altri articoli.

Andrea Piani Administrator
Mi chiamo Andrea Piani, sono un programmatore specializzato nello sviluppo di App iOS e Android. Appassionato di elettronica e blockchain. Divulgatore tecnologico. Creatore della web agency Immaginet Srl (Udine) e di PrestaExpert Srl (Milano), aziende specializzate in Digital Marketing ed e-commerce.
follow me

Vuoi una consulenza a pagamento? Vuoi sviluppare un software per la tua attività? Hai bisogno di informazioni? Compila il modulo per contattarmi. Ti risponderò entro 24 ore.

Fill out my online form.

Condividi questo articolo:

Commenta per primo

Rispondi