Come Scoprire il Web Server di un Sito con Nmap

Benchè Nmap non sia nato come strumento per identificare i servizi attivi sugli host remoti, nel corso del tempo, quello che può tranquillamente essere definito il più popolare network scanner sulla scena, è evoluto e si è arricchito di molte altre funzionalità utili all’information gathering.

Una di queste è la capacità non solo di rilevare se la porta Tcp (o Udp) è aperta o chiusa, ma anche di capire quale tipo di server è in ascolto sulla porta analizzata. Cosa molto utile, perchè è molto importante in fase di pianificazione di un attacco sapere se il servizio da attaccare è un server Apache o invece, per esempio Microsoft IIS

Di seguito mostro un esempio di come è possibile scoprire il web server di uno dei siti di informazione più noto e frequentato d’Italia, ovvero www.corriere.it. Ovviamente, con la stessa procedura è possibile scoprire il web server di qualsiasi host collegato a Internet.

Il comando da eseguire per ottenere questo risultato è la seguente:

root@diablo:~# nmap www.corriere.it -p 80 -sT -sV -P0 -vv

Il parametro -p 80 è abbastanza chiaro, dice a Nmap di effettuare una scansione sulla porta 80; l’opzione -sT specifica una scansione di tipo Tcp connect; con -P0 diciamo a Nmap di non verificare se il sito è o meno online (in alcuni casi gli host non rispondono ai ping, impedendo così di proseguire con la scansione).

Il parametro “chiave” di questa linea di comando è però -sV: con questo comando ordiniamo allo scanner di controllare non solo se la porta Tcp 80 è aperta, ma di indagare anche il tipo di servizio in ascolto.

Questo è  il risultato:

Nmap scan report for www.corriere.it (194.20.158.241)
Host is up (0.11s latency).
Hostname www.corriere.it resolves to 2 IPs. Only scanned 194.20.158.241
rDNS record for 194.20.158.241: corriere.it
Scanned at 2012-01-25 17:54:22 MSK for 6s
 
PORT   STATE SERVICE VERSION
80/tcp open  http    Apache httpd
 
Nmap done: 1 IP address (1 host up) scanned in 6.62 seconds

Questo report ci mostra che il sito è attivo, che la porta Tcp 80 è aperta e che il server web è Apache. Alcune informazioni di base, apparentemente poche, ma che già ci possono dare alcune indicazioni utili.