mar 192012
 

Questo è un mio articolo, pubblicato la prima volta su Wazi

Alcuni trovano l’arte di catturare e interpretare i pacchetti che passano attraverso la rete una cosa arcana come la lettura di The Matrix, ma non è necessario essere i nuovi Neo per essere in grado di analizzare il flusso di rete. Un potente alleato può aiutarvi in questa missione: Wireshark , un potente software per analizzare il traffico di rete.

Wireshark è diversi strumenti in una sola applicazione. Si può usare per analizzare la struttura della vostra rete wireless alla ricerca di potenziali errori di configurazione. E’ in grado di identificare molti tipi di incapsulamento e di isolare e visualizzare tutti i campi che compongono un pacchetto di rete. Funziona anche come packet sniffer , simile a tcpdump .

Con tutte queste potenti funzionalità, si potrebbe pensare che Wireshark è difficile da imparare. Per certi versi lo è, ma si può facilmente imparare ad utilizzare alcuni dei filtri che vengono forniti con il software e ti permettono di concentrarvi su specifici client e tipologie di traffico. In questo articolo vi mostrerò diversi modi per utilizzare Wireshark per orientare le vostre ricerche.




Quando dico “filtri”, mi riferisco ai Berkeley Packet Filters (BPF). BPF è in realtà un linguaggio di micro-programmazione. Che viene compilato ed eseguito in fase di esecuzione verso i pacchetti intercettati da strumenti come tcpdump e Wireshark. I filtri sono indispensabili quando si sta cercando di isolare un sottoinsieme molto limitato di pacchetti tra le centinaia di migliaia al secondo che passano su una rete a 100Mbps. I filtri sono compilati in modo da funzionare con le migliori prestazioni possibili, cosa che è importante quando si sta facendo una cattura in tempo reale.

Utilizzare dei filtri in Wireshark è semplice. È necessario conoscere solo i nomi di campo di ogni singolo protocollo, ad esempio HTTP, ICMP, e ftp. Per esempio, se si desidera visualizzare solo i pacchetti ICMP, si può semplicemente scrivere icmp nella finestra principale del filtro di Wireshark. Se si desidera evidenziare tutti i pacchetti che stanno venendo o andando a uno specifico indirizzo IP, per esempio 10.100.1.1, il filtro sarebbe ip.dst == 10.100.1.1 || ip.src == 10.100.1.1 , che tradotto significa visualizzare solo i pacchetti in cui il campo di destinazione (ip.dst) o (||) il campo di origine (ip.src) del protocollo IP è uguale (==) a 10.100.1.1.

wireshark_screenshot_001

Filtri per catturare e visualizzare

Wireshark ha due tipi di filtri. i filtri per la cattura, che come dice il nome, vengono utilizzati per catturare solo una parte del traffico, mentre i filtri di visualizzazione vengono applicati al traffico catturato per mostrare solo alcuni pacchetti, secondo le regole che si usa. In questo articolo parleremo di entrambi i tipi.

Cominciamo con l’installazione di Wireshark. L’applicazione è disponibile come pacchetto binario in tutte le principali distribuzioni, quindi potete usare il vostro package manager preferito: sudo apt-get install wireshark sotto Debian o Ubuntu, emergono wireshark sotto Gentoo, o yum install wireshark sotto Red Hat o CentOS .

Cominciamo con un classico esempio che mostra alla gente perché utilizzare il protocollo FTP è una cattiva idea. Facciamo partire Wireshark digitando in un terminale:

 sudo wireshark 

È possibile iniziare a catturare il traffico andando sul pannello di sinistra della finestra di Wireshark e cliccando su Capture/Interfaces. Scegliere l’interfaccia che va “fuori” nella rete (ad esempio eth1) e fare clic su Start, e Wireshark comincerà a esaminare tutti i pacchetti in transito sulla rete.

wireshark_screenshot_002

Ora aprite una seconda finestra di terminale e invocate una normale sessione FTP. Immettete il nome utente e la password, eseguite alcuni comandi FTP, quindi chiudere la sessione. Tornare alla finestra principale di Wireshark, e dovreste vedere che molti pacchetti sono passati attraverso la rete dal momento in cui avete iniziato la cattura. Fate clic su Stop Capture (o premere Ctrl + E), ora si può esaminare il traffico che avete.

Capire qualcosa da quello che è probabilmente una grande quantità di traffico non è semplice, finché non si utilizza un filtro BPF. Ne volete uno che mostra solo i pacchetti che fanno parte di una connessione FTP, quindi scrivete nel tipo di campo Filter “ftp”. Immediatamente il traffico della vostra sessione dovrebbe essere evidenziato, e in una splendida esposizione di scarsa sicurezza, vedrete chiaramente il vostro username e la password. Un qualcosa di simile a questo:

356	101.676753	10.100.1.1	192.168.0.4	FTP	86	Response: 220 (vsFTPd 1.1.3)
360	104.546659	192.168.0.4	10.100.1.1	FTP	77	Request: USER wazi
362	104.594520	10.100.1.1	192.168.0.4	FTP	100	Response: 331 Please specify the password.
366	106.530150	192.168.0.4	10.100.1.1	FTP	77	Request: PASS mytest
371	108.922240	10.100.1.1	192.168.0.4	FTP	88	Response: 530 Login incorrect.

Se questo risultato non convince i vostri colleghi a smettere di usare FTP e passare a OpenSSH , allora non c’è speranza per loro.

Qua finisce la prima parte introduttiva, ma se l’argomento vi interessa, non perdete la seconda parte “Divertiamoci con i filtri di Wireshark


Popular Posts:

flattr this!

 Leave a Reply

(required)

(required)


*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>