Che si tratti di capire perché eMule rimanga "bendato", risalire al motivo per cui il server FTP aziendale oggi è inutilizzabile, o valutare il rischio di subire un attacco informatico, un "port scan" è quello che ci vuole per diagnosticare il problema in pochi istanti. Presentiamo un servizio web ideale per l'uso domestico, e un approfondimento ad un software gratuito per professionisti e utenti avanzati. Entrambi funzionano su Windows, Linux e Mac.
Nmap è un potente software gratuito ed open source. È realizzato da Gordon "Fyodor" Lyon, uno smanettone divenuto molto famoso fra gli appassionati di sicurezza informatica proprio per questo suo lavoro
L'applicazione consente di effettuare port scanning un po' in tutte le salse: testare singoli host, intere reti, porte TCP o UDP ed altro ancora, il tutto con una libertà di configurazione davvero esaltante (per gli smanettoni, s'intende!).
Il programma è disponibile in versioni compatibili con Windows, Linux, Mac OS X ed anche varie declinazioni di UNIX (Solaris, Free/Net/OpenBSD eccetera). Per quanto riguarda il sistema operativo Microsoft, Nmap può essere usato su qualsiasi versione, da Windows 2000 in avanti. Nel corso delle prove, è stato impiegato anche su Windows 7 64 bit senza problemi.
Nmap è un programma a riga di comando. Fortunatamente però, il pacchetto di installazione predispone anche diZenmap, un front-end che consente di sfruttare le potenti funzionalità di Nmap all'interno di un'interfaccia grafica semplice e funzionale.
Per predisporre Nmap sul vostro computer, collegatevi a questa pagina e scaricate il file contrassegnato dalla dicitura Latest stable release self-installer prestando attenzione a selezionare quello adatto al sistema operativo in uso
Portate quindi a termine la procedura di setup cliccando ripetutamente su Avanti.
Identificare il sistema remoto da scansionare
Il primo passo da svolgere è quello di identificare il sistema che desiderate scansionare.
Se si trova nella LAN...
Se si tratta di un computer residente all'interno della vostra stessa LAN, potrete usare il nome della macchina (lo stesso che impiegate per accedere ai file e le cartelle condivise) oppure il suo indirizzo IP: generalmente sarà un numero simile a 192.168.0.1 oppure a 10.0.0.1.
Tutto piuttosto semplice..
Se si trova fuori dalla LAN..
Se invece desiderate effettuare un port scan di un sistema remoto, raggiungibile tramite Internet, dovrete utilizzare il suo nome a dominio completo: si tratta di una stringa simile a miopc.no-ip.org se state testando il vostro PC di casa da una rete esterna (maggiori info) oppure www.microsoft.com per un server al quale sia stato assegnato un nome a dominio più tradizionale.
Anche in questo secondo caso, potrete impiegare, in alternativa al nome a dominio, direttamente il relativo indirizzo IP: si tratterà di un numero simile a 79.50.22.167,207.46.232.182 o, comunque, differente da 192.168.xxx.xxx, 10.xxx.xxx.xxx ed esterno all'intervallo 172.16.0.0 - 172.31.255.255.
Ricordate infine che, se il vostro obbiettivo risiede dietro ad un router, come condizione di default starete effettuando un port scan del router stesso: affinché sia possibile raggiungere lo specifico host di vostro interesse, sarà necessario che l'instradatore remoto sia correttamente configurato per effettuare un rilancio di specifiche porte ai sistemi della sua LAN. Tale attività è quella generalmente chiamata "rilancio/inoltro/apertura delle porte del router" ("port forwarding").
Una raccomandazione chiara
Appare evidente che il port scanning attraverso Internet richiede qualche attenzione in più. La mia raccomandazione è quindi quella di provare sempre il programmaall'interno della rete locale, sopratutto mentre si sta ancora imparando ad usarlo: da notebook a PC fisso è probabilmente una delle situazioni più semplici.
Solo una volta verificato che tutto funzioni come ci si aspetti, passare alla scansione via Internet.
Effettuare il primo port scan
Completata l'installazione, lanciate Zenmap dal menu Start
Indicate l'host che volete testare nel campo Target:: è quello che avete identificato durante la fase preliminare descritta nel paragrafo precedente ("Identificare il sistema remoto da scansionare")
Dovete quindi indicare quale profilo di scansione desiderate utilizzare: la scelta di default, Intense scan, è probabilmente quella che meglio coniuga velocità e completezza
Tutto è pronto: premete il pulsante Scan ed attendete più o meno un minuto, o comunque fino a quando nella finestra principale non si legge la dicitura Nmap done fra le varie informazioni.
A questo punto la scansione è completa, e potete analizzare il responso del software.
Scheda "Host Details"
Portatevi sulla scheda Host Details. Qui troverete alcune interessanti informazioni inerenti il computer esaminato: sono riportate il numero di porte aperte, il sistema operativo in uso, l'indirizzo IP e quello MAC (quest'ultimo solo per i calcolatori appartenenti alla stessa rete) più altre informazioni estremamente tecniche sul protocollo TCP
Scheda "Ports / Hosts"
Ma è la scheda Ports / Hosts il vero punto focale di Nmap: qui potrete infatti vedere tutte le porte aperte sul sistema remoto
Nell'immagine precedente, si nota che il PC scandagliato ha attivo il servizio di condivisione file e stampanti (porte 139 e 445) ed è pronto ad essere utilizzato via Desktop Remoto (porta 3389).
In caso Nmap non riportasse l'informazione esatta circa il nome del servizio, potete collegarvi all'eccellente "Port Authority Database Help", immettere il numero della porta nel piccolo campo di testo e premere Jump per ottenere informazioni aggiuntive.
Per verificare che effettivamente Nmap stia lavorando alla perfezione, provate ad avviare alcuni servizi di rete aggiuntivi sul calcolatore oggetto d'indagine: nell'immagine proposta di seguito, ad esempio, ho avviato, sullo stesso sistema analizzato in precedenza, anche Apache HTTP Server e MySQL
Come al solito, potete ordinare i risultati cliccando sulle varie intestazioni di colonna.
Port scan su un PC "attrezzato"
Se seguite con attenzione MegaLab.it, è possibile vi ritroviate una lunga lista di porte aperte. La cattura proposta di seguito viene dal PC utilizzato per realizzare alcuni articoli proposti dal canale "Tecniche avanzate" negli ultimi mesi
Fra le altre, troviamo:
- Porta 21: Server FTP (FileZilla Server)
- Porta 80 e porta 3306: Apache con PHP e MySQL, utilizzabili per erogare un sito web da locale
- Porta 3389: Desktop Remoto, grazie al quale accedere al sistema anche attraverso Interent
- Porta 5900: UltraVNC, il celebre software open source alternativo a Desktop Remoto
- Porta 24800: Synergy+, un indispensabile alleato per gestire più PC con un solo mouse e una sola tastiera
- Porta 48005: eMule, il programma di filesharing per eccellenza
- Porta 59274: µTorrent, il client per la rete BitTorrent
La topologia della rete
Una volta che avrete scansionato con successo una rete o almeno 2-3 sistemi, date un'occhiata alla scheda Topology: troverete un'interessante rappresentazione grafica della distanza fra voi ed i vari computer testati
Ad ogni circonferenza corrispondente un ramo di rete attraversato: se quindi state lavorando solo con PC in LAN, vedrete tutti i sistemi sullo stesso cerchio.
Scansionare intere reti
Nmap vi consente anche di controllare, con un colpo solo, lo stato di molteplici i calcolatori. Come spesso avviene quando si parla di questo potentissimo strumento, vi sono molteplici possibilità.
Se conoscente i nomi o gli indirizzi IP dei computer che volete scansionare, scriveteli nel campo Target separati da uno spazio.
Se invece desiderate testare tutte le macchine presenti su una specifica rete, limitatevi ad immettere in Target l'indirizzo IP della rete stessa, sostituendo la parte che identifica i calcolatori con un asterisco (*). Per testare una LAN classica scriveremo quindi 192.168.0.*, oppure 192.168.1.* o ancora 10.0.0.* a seconda della specifica configurazione in uso.
Un risultato analogo è ottenibile anche indicando esplicitamente la subnet da utilizzarsi (192.168.0.0/24, ad esempio).
Potete poi testare solamente determinati intervalli: immettendo nel campo Target qualcosa del tipo 192.168.0.1-10, scansionerete solamente i primi dieci host della rete.
Porte UDP
Fino ad ora abbiamo parlato implicitamente solo di porte TCP, ovvero quelle utilizzate da tutti i più importanti servizi di rete. Nmap è però in grado di rilevare anche eventuali porte UDP, sebbene le differenze intrinseche fra i due protocolli siano tali da rendere nettamente più difficile e impreciso questo secondo tipo di scansioni.
Per ricavare informazioni anche sulle porte UDP, selezionate semplicemente Intense scan plus UDP dal menu a tendina Profile: prima di iniziare la procedura
Verificare lo stato di una porta specifica
Da quanto mi è stato possibile capire, Zenmap non offre un oggetto grafico per indicare ad Nmap di scansionare una singola, specifica porta (diciamo la "80", per questo esempio).
Per aggirare il problema, indicate il vostro obbiettivo nel campo Target, selezionate il profilo Regular scan e quindi inserite il parametro -p 80 fra le due stringhe presenti nel campo Command. Dovreste così ottenere qualcosa del tiponmap -p 80 computerdaprovare.
Proseguite con Scan e Nmap proverà solo la porta 80. Il responso, come facilmente intuibile, è pressoché istantaneo.
No, verso "localhost" non funziona
Prima che perdiate tempo cercando di eseguire un port scan del vostro stesso sistema, sappiate che, perlomeno sotto Windows, tale pratica è preclusa
Il programma mostra un avviso nella finestra principale, quindi riporta una serie di risultati più o meno sballati.
Il manuale segnala un possibile rimedio, ma vi suggerisco vivamente di utilizzare sempre due calcolatori distinti per eseguire le vostre scansioni.
Port scan di MegaLab.it
Nmap consente di scansionare qualsiasi host, compresi quelli che erogano i vostri siti web preferiti. Come detto in apertura però, tale pratica potrebbe non essere gradita dagli amministratori dei sistemi in questione, motivo per cui sconsiglio di eseguire port scan senza avere ottenuto le debite autorizzazioni.
A scopo informativo e sperando di saziare la curiosità dei lettori più avventurosi prima che si caccino in qualche guaio, riporto un esempio di quello che è possibile ottenere rivolgendo il programma verso un server come quello che sorregge MegaLab.it
Va da sé che altri portali riporteranno informazioni più o meno analoghe.
Lo scopo principale di un port scan è quello di stabilire quali porte di comunicazione siano aperte. Ma.. cosa fare in caso i risultati non fossero quelli sperati ed un servizio non rispondesse a dovere?
Le cause possono essere numerose: riporto di seguito le più probabili.
- Problemi fisici: sinceratevi che la comunicazione di livello fisico fra i calcolatori sia possibile. Controllare lo stato dei cavi (le estremità hanno fatto click all'inserimento? c'è forse una lacerazione da qualche parte?), e verificate che la spia LED delle schede di rete sia accesa (se presente)
- Problemi di networking: cercate di escludere la possibilità che il malfunzionamento sia imputabile ad un problema di rete: i calcolatori hanno acquisito correttamente l'indirizzo IP? riescono ad accedere ad un servizio base quale la condivisione di file e stampanti? si vedono da "Risorse di rete"?
- Il processo sta funzionando? verificate che il programma incaricato di erogare il servizio sul sistema remoto sia effettivamente in esecuzione: assicuratevi che esista il processo utilizzando il Task Manager (Ctrl + Shift + Esc per richiamarlo) oppure che il relativo servizio (Win+R -> services.msc) riporti la dicitura Avviato
- Colpa del firewall: se tutti i test precedenti restituiscono esito negativo, significa che qualcosa sta bloccando la comunicazione. Il primo candidato è il firewall: eseguite tutti i controlli del caso e verificate che tale componente sia stato debitamente configurato per lasciar passare il traffico indirizzato alla porta utilizzata dal vostro servizio di rete. Se siete nelle condizioni di poterlo fare in tutta sicurezza, provate a disabilitare il firewall e constatere se poi la situazione si risolve
- Colpa del router: ricordate infine che ogni porta che desiderate raggiungere via Internet deve essere opportunamente inoltrata dal router remoto al calcolatore. La procedura varia da modello a modello: per quanto riguarda il diffusissimo Alice Gate fornito in comodato da Telecom Italia, è disponibile l'articolo "Aprire porte TCP/UDP su modem-router Alice gate 2 Plus e 2 Plus Wi-Fi" mentre per tutti gli altri dovrete fare riferimento al libretto di istruzioni.
Ulteriori informazioni
Nel corso di questa guida, abbiamo affrontato tutti gli aspetti più importanti del funzionamento di Nmap.
Lo strumento è comunque molto flessibile, ed offre una pletora di opzioni e parametri differenti che non mi è possibile approfondire in questa sede. Gli interessati possono fare riferimento all'eccellente documentazione ufficiale e, in particolare, al capitolo "Port Scanning Techniques", per tutte le altre informazioni.
Fra le pieghe della guida ufficiale, scoprirete anche alcune curiosità: ad esempio, l'autore segnala che proprio Nmap è chiaramente visibile in una delle scene di hacking del celebre film "Matrix".
Nessun commento:
Posta un commento