Questo tutorial spiega come utilizzare NMAP per trovare server e vulnerabilità dietro le porte.
NMAP è uno degli strumenti di networking più utili che consente di mappare le reti, scoprire host, scansionare le porte, diagnosticare problemi di rete, rilevare e sfruttare le vulnerabilità e altro ancora.
Questo tutorial si concentra sulla versione dei servizi e sulle tecniche di rilevamento delle vulnerabilità. I lettori non hanno familiarità con NMAP potrebbero preferire iniziare leggendo il nostro tutorial di base NMAP.
Tutte le istruzioni in questo documento contengono schermate, rendendo facile per tutti i lettori capire come sono implementati nel terminale.
Scansione delle porte per rilevare i servizi con NMAP
La prima sezione di questo tutorial spiega come rilevare i servizi e la loro versione software che ascolta su porte aperte.
Come mostrato nel primo screenshot, una normale scansione NMAP restituirà le porte aperte tra le 1.000 più comunemente usate. Per impostazione predefinita, NMAP scansiona le 1.000 porte più popolari.
Le porte sono associate a protocolli di servizio correlati. Nel seguente output, NMAP trova porte aperte 21, 514 e 3128.
NMAP 192.168.0.103L'utente sa che le porte 21, 514 e 3128 sono aperte. Ad esempio, sa che esiste un server FTP nella porta 21. Ma l'utente vuole imparare il software FTP e tutti gli altri servizi.
Per rilevare software e versioni, il -Sv (Versione) Il flag può essere passato, come mostrato nello screenshot seguente. In cui puoi vedere, Vsftpd 3.0.3 E Proxy di calamari 4.13 vengono rilevati.
NMAP -SV 192.168.0.103IL -UN Il flag restituisce anche le versioni di servizio insieme alle informazioni sul sistema operativo.
Nel seguente esempio, il -UN La flag ha rivelato che il bersaglio è un sistema operativo Linux, probabilmente 2.6.18 o 2.6.22:
sudo nmap -a nic.arLa sezione successiva di questo tutorial descrive le tecniche NSE (NMAP Scripting Engine). Questo esempio pratico mostra quale -sceneggiatura La flag è implementata per incorporare lo script banner grab nella scansione.
Banner Grab Script Analizza le risposte del servizio per realizzare la loro versione software.
Nel seguente esempio, il Banner lo script viene eseguito nella porta di targeting di scansione 21, rivelando il server FTP è Proftpd.
nmap -p 21 - -script = banner 66.97.40.223Per terminare questa sezione e continuare con i tipi di scansione della vulnerabilità, l'esempio pratico seguente mostra il -O (Sistema operativo) Implementazione di flag per indovinare il sistema operativo target.
In questo caso, NMAP è sicuro al 93% che l'obiettivo ha Linux con il kernel 4.4.
sudo nmap -o 66.97.40.223Queste sono le tecniche NMAP più note per il rilevamento della versione di servizio e del sistema operativo.
Rilevamento delle vulnerabilità con NSE (motore di scripting NMAP)
Questa sezione descrive alcune tecniche per rilevare le vulnerabilità attraverso le scansioni NMAP, con l'aiuto dell'NSE (motore di scripting NMAP), spiegati nel nostro tutorial NSE.
Il motore di scripting NMAP è un insieme di script che gli utenti possono includere nelle loro scansioni, progettate principalmente per rilevare e sfruttare le vulnerabilità. Gli utenti possono anche scrivere i propri script per scopi personalizzati.
Il primo passo per gli script NSE è aggiornare il database, assicurandosi che NMAP sia aggiornato con le ultime vulnerabilità e tecniche.
Per aggiornare NSE, eseguire il seguente comando:
sudo nmap--script-aggiornato bDopo aver aggiornato il database, l'utente può eseguire vari script per trovare vulnerabilità. Gli script sono classificati per categorie che puoi vedere su https: // nmap.org/nsedoc/categorie/.
Nel seguente esempio, il -sceneggiatura La flag chiama gli script da Vuln categoria, scansione per circa 150 vulnerabilità popolari.
Sudo nmap -Script Vuln 66.97.40.223 -vCome puoi vedere nella seguente screenshot, NMAP riferisce che alcune vulnerabilità vengono scartate mentre altre sono probabili:
IL http-csrf Lo script consente agli utenti di scansionare i siti Web per trovare vulnerabilità CSRF (Cross Scripting Request).
Sudo NMAP-Script HTTP-CSRF Linuxhint.com -vCome puoi vedere di seguito, se verbosità (-v) è istruito, NMAP stampa il risultato di tutti i controlli che fa contro il sito Web.
Gli utenti possono implementare caratteri jolly per completare i nomi degli script. Nel seguente esempio, l'utente aggiunge tutti gli script relativi a HTTP o tutti gli script il cui nome inizia con "HTTP", indipendentemente da come continua.
Sudo nmap -Script "Http*" LinuxHint.com -vIl motore di scripting NMAP può colpire intere reti per rilevare i computer infetti da malware. Questa è un'ottima tecnica per gli amministratori che si avvicinano alle possibili intrusioni di malware.
Gli script di malware disponibili sono disponibili su https: // nmap.org/nsedoc/categorie/malware.html.
Rileva le vulnerabilità con NMAP e Vulscan
Vulscan è un ulteriore set di script per NSE, che non è incluso in NMAP per impostazione predefinita.
Vulscans è profondamente spiegato nel tutorial NMAP Vulscan, ma questa sezione offre una breve revisione, installazione e istruzioni di base.
Vulscan è uno script di motore di scripting NMAP per aiutare le attività di rilevamento della vulnerabilità,
Per ottenerlo, clone Vulscan usando il idiota comando, come mostrato di seguito:
Git clone https: // github.com/Scipag/VulscanCrea un collegamento soft alla directory degli script NSE eseguendo il seguente comando:
sudo ln -s 'pwd'/spipag_vulscan/usr/share/nmap/scripts/vulscanOra, Vulscan è disponibile per essere chiamato dal -sceneggiatura Flag per eseguire ulteriori controlli di vulnerabilità.
La sintassi è la seguente:
NMAP -SV -Script = VulsCan/Vulscan.nseNell'esempio seguente, Vulscan viene lanciato contro Linuxhint.com.
Quando Vulscan rileva un probabile foro di sicurezza, esegue tutti gli script correlati.
NMAP -SV -Script = VulsCan/Vulscan.NSE Linuxhint.comVulscan è un'aggiunta eccellente per gli utenti NMAP, in particolare quelli utilizzati per il motore di scripting NMAP. Ti consigliamo vivamente di continuare a leggere il nostro tutorial Vulscan menzionato nell'introduzione di questa sezione.
Vulcatori
Usa il seguente comando per clonare NMAP-Vulner nella directory degli script NSE:
sudo git clone https: // github.com/vulnerscom/nmap-vulners.git/usr/share/nmap/scripts/vulnersEseguire NMAP con i vulici usando la seguente sintassi:
Sudo NMAP -Vulviri/vulici di script.nseInformazioni su NSE (motore di scripting NMAP)
Il NSE (NMAP Scripting Engine) è tra le funzionalità NMAP più richieste.
È una raccolta di script per automatizzare e personalizzare le attività di scansione. Gli script possono essere eseguiti prima, durante o dopo la scansione.
Mentre NMAP offre diverse categorie di script, gli utenti possono anche scrivere i propri script in lingua LUA.
Inoltre, gli script NSE possono essere utilizzati per lo sfruttamento della vulnerabilità al rilevamento del servizio e della vulnerabilità o anche per gli attacchi di forza bruta.
Gli script sono divisi nelle seguenti categorie: AUTH, trasmissione, predefinito, scoperta, dos, impresa, malware, invadente, fuzzer, esterno, sicuro, versione, E Vuln, La categoria utilizzata nel primo esempio di utilizzo nella sezione NSE.
I dispositivi virtuali metasploabili sono una risorsa eccellente per il test delle capacità NSE. Gli script possono anche essere inclusi in scansioni massicce destinate a più reti.
Gli script dell'NSE sono classificati in base a criteri specifici in base al momento dell'esecuzione dello script, dello scopo dello script e della funzionalità.
La prima classificazione basata sul tempo di esecuzione include quattro tipi di script:
La seconda classificazione si basa sulla sicurezza e sugli scopi dello script.
Scopo e sicurezza definiscono la categoria degli script. Le categorie erano precedentemente elencate in questo documento.
Conclusione
NMAP è estremamente potente e flessibile. In altri tutorial sulla scansione delle porte NMAP, l'host Discovery è stato non rivelato. Il contenuto precedente mostra che qualsiasi utente, indipendentemente dal livello di conoscenza, può essere introdotto alla sicurezza IT ed eseguire compiti importanti, come le scansioni di vulnerabilità. Tutte le istruzioni sopra sono valide per tutte le distribuzioni Linux e probabilmente anche per lo strumento di riga di comando Windows.
NMAP è il più antico scanner di porte viventi, inizialmente sviluppato da Fyodor Vaskovich nel 1997 per scoprire i servizi e le reti di mappa. Scritto inizialmente in C è stato riscritto in C ++ e altamente migliorato dalla comunità open source nella sua seconda versione del 1998. Continua ad aggiungere funzionalità e miglioramenti oggi.
È probabilmente il motore di scansione più utilizzato per la diagnosi e la sicurezza, il mercato offre molte alternative, ma le funzionalità NMAP e gli sforzi alla base della sua comunità non sono ancora eguagliati.
Grazie per aver letto questo tutorial NMAP che spiega come scansionare le porte per trovare servizi e vulnerabilità. Continua a seguirci per ulteriori contenuti professionali di Linux e IT.