- Wireshark è un analizzatore di protocolli gratuito e avanzato che consente di catturare e studiare il traffico di rete in dettaglio e in tempo reale.
- Filtri, colori e visualizzazioni a livelli facilitano l'analisi di protocolli quali HTTP, DNS, TCP, UDP e il rilevamento di problemi o attacchi.
- Le versioni recenti, come Wireshark 4.6.0 su macOS, aggiungono metadati di processo e migliorano il debug e la sicurezza negli ambienti moderni.
- Padroneggiare Wireshark lo rende uno strumento strategico per la diagnosi, la sicurezza e l'ottimizzazione delle reti aziendali e domestiche.
Se hai già familiarità con Wireshark e vuoi approfondire le tue conoscenze, questo articolo fa al caso tuo. Esploreremo come sfruttare appieno le sue potenzialità, dalle acquisizioni di base all'analisi avanzata del traffico , inclusi filtri, colori, protocolli e applicazioni pratiche nell'analisi della sicurezza informatica , nell'ottimizzazione delle prestazioni e nella risoluzione dei problemi.
In questo testo troverete molti concetti spiegati con calma e in un linguaggio semplice e quotidiano, tipico degli strumenti professionali, dei corsi, dei libri e dei laboratori come TryHackMe, ma applicati a un contesto pratico. L'obiettivo è che, al termine della lettura, siate in grado di navigare con facilità nell'interfaccia di Wireshark, acquisire le informazioni necessarie e comprendere cosa sta accadendo nella vostra rete.
Cos'è Wireshark e perché è così importante?
Wireshark è essenzialmente un analizzatore di protocolli di rete (un classico sniffer di pacchetti) che consente di visualizzare, uno per uno, i pacchetti in entrata e in uscita dalle interfacce di rete, siano esse reti Wi-Fi pubbliche , Ethernet o di altro tipo. Ogni pacchetto viene catturato, isolato e visualizzato in tempo reale, con tutti i suoi dettagli.
Stiamo parlando di un programma libero e open source , distribuito sotto la licenza GNU General Public License v2. Questo significa che non esistono versioni ridotte o "edizioni demo": ciò che si scarica è la versione completa, con tutte le funzionalità, e qualsiasi sviluppatore può esaminare il codice per assicurarsi che non contenga elementi sospetti.
Il progetto è gestito dalla Wireshark Foundation , un'organizzazione no-profit che coordina lo sviluppo, la documentazione e la distribuzione del software. Molte aziende e professionisti che si affidano a Wireshark per il loro lavoro contribuiscono con donazioni, che permettono allo strumento di rimanere attivo e di continuare a evolversi.
Wireshark è disponibile per Windows, macOS e distribuzioni Linux come Ubuntu e può essere scaricato dal sito web ufficiale, wireshark.org. Una volta installato, visualizzerete un'interfaccia che inizialmente potrebbe sembrare complessa: centinaia di righe che cambiano rapidamente, colonne con indirizzi IP, protocolli, durate, timestamp... ma tutto ciò è prezioso per diagnosticare guasti, rilevare attacchi o comprendere l'attività dei vostri dispositivi.
Interfaccia di Wireshark: pannelli, preferenze e guida introduttiva
Quando si apre Wireshark, la schermata è organizzata in diversi pannelli principali: l'elenco dei pacchetti, i dettagli del pacchetto selezionato e la visualizzazione raw (byte esadecimali e ASCII). Comprendere questi pannelli è fondamentale per lavorare in modo efficace.
Il pannello superiore visualizza tutti i pacchetti acquisiti. Ogni riga corrisponde a un pacchetto e include informazioni quali numero del pacchetto, ora, indirizzo IP di origine, indirizzo IP di destinazione, protocollo e un breve riepilogo. Il pannello centrale mostra la suddivisione a livelli del pacchetto (collegamento, rete, trasporto, applicazione), mentre il pannello inferiore visualizza i byte in formato esadecimale e la loro rappresentazione testuale.
Dal menu delle impostazioni, è possibile aprire le preferenze di Wireshark e regolare elementi come il formato dell'ora, la visualizzazione dei pannelli, la lingua dei campi o persino nascondere determinati elementi. Ad esempio, è possibile modificare il layout dei pannelli o disabilitare la visualizzazione dei byte esadecimali se si preferisce concentrarsi esclusivamente sull'analisi logica.
Anche la navigazione all'interno di una registrazione è fondamentale: è possibile accedere direttamente a un numero di pacchetto specifico, passare al primo o all'ultimo dell'elenco e navigare tra le conversazioni utilizzando le scorciatoie da tastiera. Inoltre, è possibile aggiungere pacchetti ai segnalibri per poterli consultare in seguito , il che risulta molto utile quando si segue un flusso lungo e si ha bisogno di ricordare determinati punti chiave.
Cattura del traffico: interfacce, limiti e tipi di pacchetti
Prima di analizzare, è necessario acquisire i dati. Wireshark permette di scegliere l' interfaccia di rete da monitorare : la scheda Ethernet, il Wi-Fi, le interfacce virtuali, i tunnel, ecc. Non tutte le interfacce supportano lo stesso livello di dettaglio, ma in genere sarà possibile visualizzare il traffico che attraversa il dispositivo e, in determinate modalità, anche il traffico che circola sulla rete locale.
Per esercitarsi, è molto comune lavorare con acquisizioni limitate. Ad esempio, è possibile avviare un'acquisizione limitata a 1.000 pacchetti oppure configurarla in modo che si interrompa automaticamente dopo 5 secondi. Questo è utile per evitare file di grandi dimensioni e concentrarsi su finestre temporali di attività specifiche.
Wireshark supporta anche i filtri di acquisizione, che consentono di registrare fin dall'inizio solo determinati pacchetti. Un esempio tipico è l'acquisizione del solo traffico UDP o TCP . Ad esempio, è possibile avviare un'acquisizione che catturi solo i pacchetti UDP se si è interessati ai giochi online o ai servizi di streaming, oppure limitare l'acquisizione al solo TCP quando si desidera studiare le sessioni HTTP, TLS, FTP, ecc.
Una volta ottenuto il risultato desiderato, è possibile salvarlo in un file con estensione .pcap o .pcapng, ad esempio come "example_tcp.pcap" , e chiudere Wireshark. Successivamente, è possibile riaprire il programma, caricare il file e analizzarlo con calma, senza che il traffico continui a fluire in tempo reale e senza il rischio di perdere dati.
Lavorare con il tempo: segni, differenze e analisi temporale
Il campo temporale è uno dei più potenti in Wireshark. Nell'elenco dei pacchetti, è possibile visualizzare quando ciascun pacchetto è stato catturato, ma anche misurare il tempo trascorso tra l'inizio della cattura e un pacchetto specifico , o tra due pacchetti specifici. Ad esempio, è possibile osservare il tempo impiegato per raggiungere il pacchetto 300 per analizzare l'evoluzione di una comunicazione.
Una funzionalità molto pratica è la possibilità di impostare un pacchetto come riferimento temporale zero . Ciò consente di ridefinire il tempo "0" in qualsiasi punto dell'acquisizione, in modo che tutti gli altri tempi vengano misurati rispetto a quel pacchetto. Questa funzione è ideale quando si desidera studiare uno scambio specifico anziché l'intera sessione.
Combinando i timestamp con i filtri e il tracciamento del flusso (seguendo il flusso TCP, seguendo il flusso UDP), è possibile visualizzare con discreta precisione la latenza, i ritardi, l'inoltro e le ritrasmissioni che si verificano sulla rete. Ciò è particolarmente utile per diagnosticare ritardi, colli di bottiglia o perdita di pacchetti.
Analisi a strati: dal MAC all'applicazione
Uno dei maggiori punti di forza di Wireshark è la possibilità di visualizzare ogni pacchetto scomposto in livelli del modello OSI o TCP/IP. Partendo dal basso, è possibile vedere quale mezzo fisico o tipo di collegamento viene utilizzato (ad esempio, Ethernet) e il tipo di interfaccia che lo supporta.
Al livello 2 (collegamento dati), è possibile verificare quale protocollo viene utilizzato , in genere Ethernet II nelle reti moderne. È qui che il campo "EtherType" diventa importante, poiché può visualizzare valori come 0x0800 (che indica IPv4) o altri identificatori meno comuni. È possibile cercare pacchetti con un valore specifico, come 0x0800 o 0xEBF2, utilizzando filtri o funzioni di ricerca all'interno dell'acquisizione.
Passando al Livello 3, troverete il protocollo di rete, solitamente IPv4 o IPv6 . Qui vengono visualizzati gli indirizzi IP di origine e di destinazione ed è possibile espandere l'albero dei campi per visualizzare altri dettagli come TTL, frammentazione, opzioni e così via. Identificare gli indirizzi IP di origine e di destinazione è una delle operazioni più basilari, ma anche più frequenti, durante la risoluzione dei problemi.
Al livello 4, Wireshark ti indica se stai gestendo TCP, UDP o altri protocolli di trasporto . Qui puoi visualizzare le porte di origine e di destinazione, i flag TCP (SYN, ACK, FIN, RST), i numeri di sequenza e di riconoscimento e dettagli chiave per capire se una connessione è stabile, se ci sono ritrasmissioni, se si perdono pacchetti o se è stata chiusa bruscamente.
Infine, a livello applicativo, Wireshark tenta di interpretare il contenuto in base al protocollo rilevato: HTTP, HTTPS (TLS/SSL), DNS, DHCP, FTP, RTP, SIP e molti altri. Quando il traffico non è crittografato, è persino possibile visualizzare il contenuto in chiaro, inclusi gli header HTTP, i comandi FTP e persino le credenziali se vengono inviate in modo non sicuro.
Ricerche, filtri e stringhe di testo all'interno dei pacchetti
Lavorare con grandi quantità di dati acquisiti richiede l'utilizzo di filtri e funzionalità di ricerca potenti. Nella parte superiore di Wireshark, si trova la barra dei filtri di visualizzazione , che consente di mostrare solo i pacchetti che soddisfano determinate condizioni: ad esempio, `ip.addr == 192.168.1.50` per concentrarsi su un dispositivo specifico, oppure `http` per visualizzare solo il traffico web.
Se sospetti che password o dati sensibili vengano trasmessi non crittografati in un pacchetto intercettato, puoi cercare stringhe di testo all'interno del contenuto del pacchetto. Puoi verificare se i pacchetti contengono, ad esempio, la parola "pass" o "content" nei dati intercettati. Puoi anche controllare se queste stringhe compaiono nel riepilogo o nelle informazioni del pacchetto, non solo nel corpo.
Questo è particolarmente utile quando si analizzano protocolli non sicuri come HTTP o FTP. In ambienti di addestramento come TryHackMe, uno dei compiti tipici è estrarre le credenziali inviate in chiaro tramite questi servizi o rilevare moduli che inviano informazioni non crittografate, il che rappresenta un evidente rischio per la sicurezza.
Oltre alle stringhe di testo, è possibile utilizzare filtri molto più precisi combinando campi di protocollo, operatori logici e confronti. Questo consente, ad esempio, di isolare solo le richieste DNS non riuscite, i pacchetti TCP con errori o i messaggi provenienti da uno specifico flusso RTP.
Regole di colori e evidenziazione per una migliore visibilità del traffico
Wireshark include un sistema di codifica a colori per i pacchetti che consente di distinguere rapidamente i diversi tipi di traffico. Il verde è generalmente associato al traffico TCP "normale", il blu al traffico UDP o DNS, mentre il nero o il rosso indicano errori o anomalie. A colpo d'occhio, è possibile capire se tutto funziona correttamente o se sono presenti troppe righe problematiche.
Dal menu delle impostazioni è possibile attivare o disattivare la visualizzazione con codifica a colori. Se necessario, è anche possibile modificare il colore di sfondo di regole specifiche ; ad esempio, creare una regola che evidenzi tutte le sessioni TCP con una particolare tonalità, oppure che contrassegni le ritrasmissioni o i pacchetti non validi con un colore diverso.
Oltre a cambiare i colori, hai la possibilità di disabilitare una regola specifica senza eliminarla, in modo da interrompere la colorazione dei pacchetti e poterla riattivare in seguito. Questa opzione è molto utile quando stai testando diversi schemi e non vuoi perdere le impostazioni esistenti.
Un'altra tecnica interessante consiste nell'assegnare un colore diverso a tutti i pacchetti appartenenti alla stessa conversazione TCP o UDP . In questo modo, è possibile seguire visivamente l'intero flusso tra due endpoint, anche quando è mescolato con centinaia di altre connessioni parallele. La navigazione tra i pacchetti evidenziati risulta quindi molto più semplice.
Diagnosi dei problemi di rete a casa e in azienda
Sebbene Wireshark sia uno strumento di livello professionale, può anche aiutare gli utenti domestici a capire cosa sta succedendo alla loro connessione. Ad esempio, se si verificano rallentamenti o interferenze Wi-Fi durante le sessioni di gioco online , è possibile analizzare il traffico per verificare se i pacchetti vengono persi, arrivano fuori ordine o subiscono ritardi eccessivi in determinate parti della connessione.
In questo contesto, è comune concentrarsi sul traffico UDP, utilizzato da molti giochi e applicazioni in tempo reale. Se, filtrando per UDP, si notano molte righe contrassegnate con colori di errore, pacchetti fuori ordine o ritrasmissioni, si saprà che il problema non è solo un ping elevato in un test, ma qualcosa di più profondo, correlato alla stabilità del percorso o alla saturazione di un nodo.
Wireshark è molto utile anche quando una pagina web non si carica, una stampante scompare dalla rete o un servizio interno non funziona. Avendo a disposizione la registrazione, è possibile vedere esattamente dove si interrompe la comunicazione: se la richiesta lascia il computer ma non riceve mai una risposta, se si verificano errori DNS, se il server risponde con un codice di errore e così via.
Dal punto di vista della privacy, questo strumento consente di visualizzare i dati che i dispositivi inviano su Internet. È in grado di rilevare se un dispositivo "comunica troppo" con il cloud, mantiene connessioni con server sconosciuti o invia informazioni non crittografate. Tutto ciò aiuta a monitorare il comportamento di dispositivi IoT , telefoni cellulari, telecamere IP, smart TV e qualsiasi altro gadget connesso.
Nelle reti domestiche con molti dispositivi, è possibile isolare l'indirizzo IP di ciascun dispositivo e osservare a quali server si connette, con quale frequenza e che tipo di contenuto trasmette. In questo modo, è possibile comprendere meglio il traffico grezzo della rete e prendere decisioni come segmentare i dispositivi, bloccare domini o modificare le configurazioni.
Analisi avanzata: HTTP, DNS, scansioni di rete e attacchi
In ambienti più avanzati, Wireshark diventa un alleato fondamentale per l'analisi della sicurezza e l'indagine sugli incidenti. Consente uno studio dettagliato del traffico HTTP, delle query e risposte DNS, delle scansioni delle porte con Nmap , dei tentativi di avvelenamento ARP, dei tunnel SSH e molto altro ancora.
Con HTTP, è possibile esaminare intestazioni, codici di risposta, URL richiesti e, in assenza di crittografia, persino il contenuto di moduli o file. Con DNS, è possibile vedere quali domini vengono risolti, quali server vengono interrogati e se ci sono risposte sospette o domini che non corrispondono al normale utilizzo dell'apparecchiatura.
Le scansioni Nmap lasciano tracce caratteristiche sulla rete: tentativi di connessione multipli a molte porte, utilizzo di flag TCP specifici, ecc. Con i filtri appropriati, è possibile rilevare queste attività e verificare se qualcuno sta mappando i servizi esposti sulla propria infrastruttura.
L'ARP spoofing/poisoning può essere rilevato anche osservando come le associazioni di indirizzi IP e MAC vengono modificate sulla rete locale. E con i tunnel SSH, anche se il contenuto è crittografato, è comunque possibile analizzare i modelli di connessione, la durata della sessione e il volume di dati trasferiti.
Molti di questi esercizi fanno parte di laboratori pratici come quelli di TryHackMe, incentrati sull'analisi del traffico dannoso o sospetto . Lavorerai con acquisizioni pregenerate per imparare a riconoscere indicatori di compromissione, vettori di attacco e comportamenti anomali utilizzando solo Wireshark.
Wireshark 4.6.0 su macOS: metadati pktap e analisi dei processi
Uno dei miglioramenti più interessanti per gli utenti Mac arriva con Wireshark versione 4.6.0 , che introduce il supporto nativo per i metadati pktap di macOS. Questo permette di associare ogni pacchetto di rete al processo di sistema che lo ha generato, offrendo un livello di dettaglio davvero notevole.
Grazie a questa integrazione, Wireshark può visualizzare informazioni come il PID (ID del processo) e il nome dell'applicazione che ha generato il traffico, insieme ad altri metadati rilevanti. Ciò semplifica notevolmente il debug delle applicazioni, poiché si sa esattamente quale componente sta aprendo connessioni, consumando larghezza di banda o causando errori.
I metadati includono anche informazioni sugli identificatori di flusso e sulle statistiche dei pacchetti scartati, consentendo un'analisi più dettagliata dei problemi di prestazioni. Queste informazioni vengono in genere acquisite utilizzando tcpdump con le opzioni -ky e -K , e quindi importate in Wireshark, che interpreta e visualizza questi blocchi in formato pcap-ng.
Per i team di sviluppo e sicurezza dell'ecosistema Apple, questo rappresenta un salto significativo: possono indagare sugli incidenti attribuendoli in modo molto preciso a processi specifici, rilevare comportamenti anomali all'interno delle proprie app e verificare che le policy di sicurezza e privacy vengano effettivamente rispettate.
Inoltre, il programma di installazione di Wireshark 4.6.0 per macOS è universale per le architetture Arm64 e Intel , semplificando così l'installazione sui Mac moderni con processori Apple Silicon e sui computer leggermente più datati con processori Intel.
Wireshark come strumento professionale: corsi, libri e ambienti moderni
L'utilizzo avanzato di Wireshark è un argomento ricorrente nei corsi di formazione specializzati, che ne illustrano le funzionalità più potenti per il debug, l'analisi e la sicurezza. Questi corsi insegnano come configurare lo strumento da zero , personalizzarlo e analizzare i protocolli di rete più comuni negli ambienti aziendali.
Una parte considerevole del tempo è generalmente dedicata a protocolli come HTTP, FTP, SSL/TLS, DNS, DHCP, RTP, SIP e altri comunemente utilizzati nel Voice over IP, nei servizi web e nelle comunicazioni crittografate. Vengono condotti studi di caso pratici per diagnosticare rallentamenti, problemi di qualità delle chiamate, interruzioni del servizio e configurazioni errate.
Parallelamente, sono emersi libri e risorse avanzate, rivolti a professionisti di rete, specialisti di sicurezza informatica e studenti che desiderano padroneggiare Wireshark negli scenari moderni. Questi materiali in genere combinano la teoria TCP/IP, TLS, l'analisi dei pacchetti e i filtri avanzati con esercizi pratici e laboratori guidati.
Un approccio comune consiste nell'integrare Wireshark con altri strumenti di sicurezza e monitoraggio, come Snort, Suricata, Zeek o lo stack ELK (Elasticsearch, Logstash, Kibana), all'interno di piattaforme SIEM. L'idea è di utilizzare Wireshark per un'ispezione dettagliata a basso livello, mentre gli altri strumenti forniscono correlazione, avvisi e dashboard di alto livello.
Il corso copre anche applicazioni specifiche nelle reti e nei sistemi IoT che utilizzano l'intelligenza artificiale, dove la visibilità del traffico è fondamentale per rilevare vulnerabilità, dispositivi configurati in modo errato o comunicazioni inattese. Padroneggiare Wireshark in questi ambienti rende lo strumento una risorsa strategica per la sicurezza e l'ottimizzazione di reti complesse.
Nel complesso, Wireshark passa dall'essere un semplice sniffer a diventare uno strumento fondamentale per il monitoraggio avanzato, la diagnosi dei guasti, l'analisi delle minacce e la comprensione approfondita del comportamento delle applicazioni e dei servizi sulla rete.
Grazie a tutte le sue funzionalità, dalle funzioni di base di acquisizione e filtraggio alle capacità avanzate di analisi per protocollo, colori, orari e metadati di processo, è chiaro che Wireshark è uno strumento essenziale per chiunque abbia bisogno di capire cosa sta realmente accadendo sulla propria rete, sia a casa, in una piccola impresa o in una grande organizzazione.
