Cattura e analizza il traffico di rete con Wireshark

Wireshark, uno strumento di analisi di rete in tempo reale, acquisisce pacchetti e protocolli in tempo reale e li visualizza in formato grafico ed elencato.
Wireshark è un analizzatore di pacchetti che circolano in rete, questo software può essere eseguito su Linux, Windows, OS X, Solaris.
Possiamo scaricare il software dalla pagina ufficiale di Wireshark, se vogliamo installarlo su Linux è già presente nei repository.

Poiché Windows è installato come qualsiasi programma, in questo tutorial installeremo per Linux, dalla finestra del terminale scriveremo i seguenti comandi:
 sudo apt-get install wireshark
Se vuoi installarlo su un server e gestire il software in forma testuale, abbiamo la possibilità di installarlo in modalità testo e il software si chiama Tshark. Per installarlo da una finestra di terminale scriviamo i seguenti comandi:
 sudo apt-get install tshark
Successivamente dovremo eseguire Wireshark con privilegi di amministratore poiché dovrà avere i permessi per accedere alla rete e per poter monitorare i pacchetti che indichiamo. Nel nostro caso, per partire sia da menu che da terminale utilizzeremo il seguente comando:
 gksudo wireshark
Questo ci chiederà il nome utente e la password per accedere in modalità amministratore o root.

Quando iniziamo possiamo vedere un elenco di interfacce che sono le reti disponibili, nell'esempio abbiamo una rete wifi wlan0 e una ethernet eth0, lì possiamo selezionare quale rete o interfacce vogliamo analizzare.

Sotto l'elenco delle interfacce abbiamo Opzioni di acquisizione o Opzioni di acquisizione. Le opzioni includono l'analisi in modalità promiscua e la modalità di acquisizione, ecc.
All'interno delle opzioni di acquisizione possiamo configurare quali protocolli e servizi monitorare per vedere quali processi e piattaforme stanno ricevendo e inviando dati all'interno della rete.

Crea un filtro di monitoraggio


Nella barra dei Filtri possiamo configurare il tipo di monitoraggio che vogliamo effettuare, ad esempio selezioniamo eth0 nella lista delle interfacce e premiamo Start, si aprirà una finestra e vedremo come il software cattura tutti i pacchetti, per un utente ce ne sono molti. Il software acquisisce molti protocolli inclusi quelli di sistema, ovvero messaggi interni provenienti da dispositivi e sistemi operativi.
Ad esempio, premiamo Filtro e quindi selezioniamo HTTP, quindi filtriamo il traffico solo dal protocollo http, ovvero le query delle pagine Web tramite la porta 80.
Apriamo il browser e Google il sito Web Solvetic.com, Wireshark ci mostrerà i dati http e tcp che vengono prodotti per effettuare la connessione poiché vediamo che i protocolli tcp e http vengono utilizzati per la ricerca e quindi mostrano il web.

Qui possiamo vedere le richieste fatte. All'interno del filtro http possiamo vedere diverse opzioni di protocollo come richieste, risposte, ecc. Applicando il filtro http.request è possibile ottenere tutte le richieste e le risposte ricevute con i GET e POST che vengono effettuate nel browser o in tutti i computer della rete, analizzando le richieste possiamo rilevare possibili attività dannose.
Successivamente analizzeremo i dati catturati, quando cliccheremo su ciascun elemento catturato vedremo le informazioni sul pacchetto di dati, il campo Frame che identifica la dimensione del pacchetto catturato, il tempo impiegato, quando è stato inviato e attraverso il quale interfacce.
Il campo Ethernet II appartiene ai dati che vengono generati nel livello di collegamento dati se vediamo il Modello OSI, qui abbiamo l'origine e la destinazione, gli IP, gli indirizzi mac e il tipo di protocollo utilizzato.
Il campo Internet Protocol ci mostrerà il datagramma IP con gli indirizzi IP, il campo Transmission Control Protocol o TPC è quello che completa il protocollo di trasmissione TCP/IP. Quindi abbiamo le intestazioni HTTP in cui riceviamo i dati resi dalla comunicazione web.
Vedremo un esempio in cui configuriamo per acquisire tutte le reti e le connessioni, quando mostriamo l'elenco filtriamo e cerchiamo le connessioni pop, ovvero la posta in arrivo.

Vediamo che le connessioni POP sono tutte a un IP che è a un VPS dove si trovano gli account di posta, quindi comunica lì.
Se inviamo alcune email e poi filtriamo per protocollo smtp vedremo tutti i messaggi inviati dal server o da ogni computer in rete con il suo rispettivo IP da dove è stato inviato e dove è stato inviato, possiamo sempre usare il web http: //www.tcpiputils.com, per determinare i dati di uno specifico IP.
Un altro filtro che possiamo applicare è il filtro DNS per poter vedere quali DNS vengono consultati che generano traffico.

In questo caso abbiamo fatto diverse ricerche e possiamo vedere i DNS di Google, quelli di Google maps, i font di Google, addons.mozilla e un DNS di una chat di Facebook, andremo a verificare l'IP.

Rileviamo che un computer della nostra rete è connesso alla chat di Facebook e sappiamo esattamente a che ora è stato connesso.
Successivamente terremo traccia delle query a un server Mysql. Gli amministratori di rete normalmente non hanno un registro delle query effettuate su un database, ma utilizzando Wireshark è possibile tenere traccia di tutte le query e salvare questo registro e visualizzare un elenco come registro delle query. Per filtrare i pacchetti mysql dobbiamo usare il filtro Mysql o mysql.query se vogliamo vedere solo i SELECT o qualche istruzione particolare.
Cercheremo di fare alcune query al server del database locale e usando il database di test Sakila che è gratuito e open source, un database che abbiamo usato nelle combinazioni del tutorial MySQL con Inner Join.
Eseguiamo una query SQL e Wireshark registrerà ogni query, l'IP di origine della query, l'IP di destinazione, la query sql, l'utente che ha effettuato l'accesso.

Inoltre se vediamo uno dei pacchetti ci dice che è stato effettuato l'accesso con un software chiamato Heidisql.exe ed è un programma pericoloso o sospetto.
Sebbene sia possibile gestire database remoti con questo software, non è il più consigliato poiché sarebbe necessario consentire connessioni esterne al server.

Filtri Wireshark Sono tanti e coprono tutti i protocolli di una rete e anche i protocolli dei siti web più diffusi.
Man mano che i pacchetti vengono intercettati, possiamo analizzare cosa sta succedendo con il traffico di rete, dobbiamo solo fare clic sul pacchetto che vogliamo analizzare per mostrarci i dati.
Se applichiamo un filtro HTTP su un pacchetto POST e clicchiamo con il tasto destro su detto pacchetto e poi nel menu a tendina selezioniamo l'opzione Follow TCP Stream o Follow TCP Flow, questo significa vedere tutto ciò che viene prodotto quando si realizza un web richiesta al server.
Di conseguenza otteniamo tutto il codice e le transazioni html che vengono eseguite nella richiesta, se l'utente inserisce una password per accedere a un sito Web, tramite questo metodo possiamo vedere la password e l'utente che utilizzo.

Tenendo conto che Wireshark monitora un gran numero di protocolli e servizi in una rete e tutti i pacchetti che entrano ed escono, il rischio di un errore nel codice dell'analizzatore potrebbe mettere a rischio la sicurezza della rete se non sappiamo cosa sia accadendo con ogni pacchetto, quindi è importante sapere come interpretare correttamente le informazioni che Wireshark ci fornisce.Ti è piaciuto e hai aiutato questo Tutorial?Puoi premiare l'autore premendo questo pulsante per dargli un punto positivo

Aiuterete lo sviluppo del sito, condividere la pagina con i tuoi amici

wave wave wave wave wave