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:
- Trovare il canale giusto su cui eseguire lo sniffing.
- Acquisire il traffico.
- Condividere l'acquisizione e un hash della password della WLAN.
1. Determinare 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:
Utilizzare il pannello di controllo del router
Se utilizzi Nest WiFi, salta questa opzione perché 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 a quello riportato di seguito 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:
Utilizzare 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:
Elencare 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.Eseguire un'acquisizione breve (anche 15 secondi sono sufficienti) su ciascuno di questi canali, seguendo le istruzioni riportate di seguito.
Installare Wireshark (per assistenza, vedi Installare Wireshark).
Aprire ogni acquisizione utilizzando Wireshark, applicare un filtro di visualizzazione di
wlan.addr == YOUR_DEVICE'S_MACe verificare se vengono visualizzati pacchetti.
2. Avviare l'acquisizione
Importante: acquisire l'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.
Acquisire 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
Acquisire l'handshake a 4 vie.
Al termine, premi Stop. Un nuovo file *.pcap è disponibile in /var/tmp e contiene tutto il traffico. Un esempio di nome file è: (null)_ch100_2018-11-06_10.52.01.pcap.
Acquisire su Linux
Disattiva il Wi-Fi. Puoi farlo:
- 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 inserisci 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 i pacchetti sull'interfaccia wlan.
3. Condividere l'acquisizione
Utilizza WPA PSK (Raw Key) Generator 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 utenti 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, ma solo se vuoi esaminare 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, passa i seguenti argomenti:
tshark -o wlan.enable_decryption:TRUE -o 'uat:80211_keys:"wpa-pwd","<psk>:<ssid>"'
Colorare i dati 802.11 di Wireshark
Esiste un pratico profilo di colore 802.11 disponibile su metageek.com: Wireshark Configuration Profile.