L'acquisizione dei pacchetti Wi-Fi consente di visualizzare dettagli e interazioni che altrimenti vengono mascherati prima di raggiungere il software in esecuzione su un dispositivo, rendendo queste acquisizioni uno strumento importante per alcuni tipi di bug.
I passaggi principali sono:
- Trova il canale giusto su cui eseguire lo sniffing.
- Acquisisci il traffico.
- Condividi l'acquisizione e un hash della password della tua WLAN.
1. Determina il canale e la larghezza corretti
Le reti WLAN operano su:
- Un canale, in genere indicato con un numero. 1-13 per i canali a 2,4 GHz, 36-200 per i canali a 5 GHz
- Con una larghezza specifica (20 MHz, 40 MHz, 80 MHz, 160 MHz)
Ogni punto di accesso (ad esempio router, nodo mesh) nella rete in genere ha un canale a 2,4 GHz e un canale a 5 GHz univoci e devi trovare a quale è connesso il dispositivo. Esistono varie opzioni:
Utilizza il pannello di controllo del router
Se utilizzi Nest WiFi, salta questa opzione: le informazioni non sono esposte.
La maggior parte dei router ha un elenco di dispositivi connessi e il canale e la larghezza che utilizzano.
- Trova l'indirizzo IP del router utilizzando questa guida.
- Vai all'indirizzo del router nel browser web, ad esempio http://192.168.1.1.
- Accedi. Non conosci la password? Cerca un tag sul router o utilizza Router Passwords.
Cerca una pagina con un nome simile a "client" o "dispositivi collegati". Ad esempio, una pagina del router Netgear potrebbe avere un aspetto simile al seguente o per i dispositivi Eero.
Potresti dover cercare altrove nelle impostazioni per mappare le informazioni del passaggio 4 a un canale e una larghezza di banda specifici. Ad esempio, un router Netgear:
Utilizza il Mac, se è già connesso allo stesso canale
Tieni premuto il tasto Opzione sulla tastiera, quindi fai clic sull'icona WLAN nell'angolo in alto a destra della barra di stato del Mac. Dovresti visualizzare il menu WLAN normale con alcune opzioni e informazioni in più. Dai un'occhiata alle voci di menu non disponibili e cerca quella che menziona il canale:
`Channel 60 (DFS, 5GHz, 40MHz)`
Impossibile trovare il canale e la larghezza
Se gli altri metodi non funzionano, puoi provare a:
Elenca tutti i canali utilizzati dagli AP (in genere 2 per ogni AP o punto mesh).
a. Consigliato Con un telefono Android, puoi utilizzare un'app come Wifiman o Aruba Utilities.
a. Su un Mac, puoi utilizzare
/System/Library/PrivateFrameworks/Apple80211.framework/Resources/airport-sper elencare le opzioni.Esegui un'acquisizione breve (anche 15 secondi sono sufficienti) su ciascuno di questi canali, seguendo le istruzioni riportate di seguito.
Installa Wireshark (per assistenza, vedi Installare Wireshark).
Apri ciascuna delle acquisizioni utilizzando Wireshark, applica un filtro di visualizzazione di
wlan.addr == YOUR_DEVICE'S_MACe verifica se vengono visualizzati pacchetti.
2. Avvia l'acquisizione
Importante: acquisizione dell'handshake a 4 vie
Se la sicurezza è attivata per il Wi-Fi, devi conoscere le chiavi di crittografia per decriptare i pacchetti acquisiti. Le chiavi di crittografia vengono derivate da un handshake a 4 vie che si verifica quando il dispositivo si connette alla rete e sono univoche per ogni connessione tra un dispositivo e l'AP.
Per questo motivo, DEVI acquisire l'handshake a 4 vie per decriptare i payload Wi-Fi. Se il dispositivo è già connesso alla rete quando avvii l'acquisizione, scollega e ricollega il dispositivo (o riavvialo) una volta avviato lo sniffing.
Acquisizione su Mac
Tieni premuto il tasto Opzione sulla tastiera, fai clic sull'icona WLAN e seleziona "Apri diagnostica wireless…":
Dalla barra dei menu di Diagnostica wireless, seleziona Finestra > Sniffer:
Imposta il canale e la larghezza sui valori recuperati in precedenza (l'esempio di screenshot è per il canale 60 e la larghezza 40 MHz):
Premi Start e inserisci la password. Ora, prova a riprodurre il problema.
Assicurati di acquisire l'handshake a 4 vie da una connessione come indicato in
Acquisizione dell'handshake a 4 vie.
Al termine, premi Stop. In /var/tmp è disponibile un nuovo file *.pcap contenente tutto il traffico. Un esempio di nome file è: (null)_ch100_2018-11-06_10.52.01.pcap.
Acquisizione su Linux
Disattiva il Wi-Fi. Puoi farlo in due modi:
- Utilizzando la GUI (opzione consigliata)
- Utilizzando l'interfaccia a riga di comando di Network Manager per indicare di interrompere la gestione dell'interfaccia WLAN:
sudo nmcli dev set <wlan-ifname> managed on - Se utilizzi un network manager alternativo, modificalo di conseguenza.
Salva questo script. Sostituisci
<wlan-ifname>con il nome dell'interfaccia Wi-Fi. Questo documento presuppone che il nome dello script siasetup-wifi-capture.#!/usr/bin/env bash sudo ifconfig <wlan-ifname> down sudo rfkill unblock wifi sudo iwconfig <wlan-ifname> mode monitor sudo ifconfig <wlan-ifname> up sudo iw dev <wlan-ifname> set channel $@Esegui lo script precedente e trasmetti il canale e la larghezza di banda più elevata per lo sniffing, ad esempio il canale 153 con larghezza di banda di 80 MHz:
./setup-wifi-capture chan 153 80 MHzApri Wireshark e ora dovresti essere in grado di acquisire pacchetti sull'interfaccia wlan.
3. Condividi l'acquisizione
Utilizza il generatore di chiavi WPA PSK (Raw Key) per generare un hash della password. In questo modo puoi decriptare l'acquisizione senza conoscere la password in testo normale.
Devi condividere anche il PSK generato in modo che altri possano decriptare l'acquisizione.
Appendice
Installare Wireshark
Puoi installare Wireshark utilizzando `apt install wireshark` su Linux o scaricarlo online dal sito web di Wireshark.
Configurare Wireshark per decriptare il traffico
Questa operazione non è necessaria per la condivisione dei file di acquisizione, eseguila solo se vuoi esaminare personalmente il traffico decriptato in Wireshark.
Con la sicurezza WPA2 sul Wi-Fi, il WPA2-PSK non viene utilizzato direttamente per la crittografia e la decrittografia del traffico. Viene utilizzato in un handshake a 4 vie, che devi acquisire per decriptare i pacchetti. Tuttavia, se stai cercando di acquisire solo problemi di connessione al Wi-Fi o cali di connettività, che possono essere ricavati dai frame di gestione Wi-Fi, non devi acquisire l'handshake a 4 vie. In ogni caso, non fa male acquisirlo comunque.
Apri Wireshark e la pagina Preferenze (menu Wireshark > Preferenze o **Cmd + , **).
Individua la sezione "IEEE 802.11" nella categoria "Protocolli" e assicurati che l'opzione "Attiva decrittografia" sia selezionata:
Fai clic sul pulsante Modifica accanto all'etichetta Chiavi di decrittografia.
Fai clic sul pulsante "+" nell'angolo in basso a sinistra e seleziona l'opzione "wpa-pwd".
Fai clic sulla colonna della chiave della riga appena creata (accanto alla stringa wpa-pwd), digita il WPA2 PSK e l'SSID nel formato
<password>:<ssid>. Ad esempio, se il nome della rete èMyHomeNetworke il WPA2 PSK èmyp4ssword, digitamyp4ssword:MyHomeNetwork.
Fai clic su OK per confermare.
Per ulteriori informazioni, consulta la guida ufficiale di Wireshark (con screenshot) all'indirizzo How to Decrypt 802.11.
Se utilizzi tshark, trasmetti i seguenti argomenti:
tshark -o wlan.enable_decryption:TRUE -o 'uat:80211_keys:"wpa-pwd","<psk>:<ssid>"'
Colorare i dati Wireshark 802.11
È disponibile un pratico profilo di colore 802.11 su metageek.com: Wireshark Configuration Profile.