Acquisisci il traffico WLAN

L'acquisizione di pacchetti Wi-Fi ti consente di vedere dettagli e interazioni che altrimenti mascherano prima che raggiungano il software in esecuzione su un dispositivo, rendendoli uno strumento importante per alcuni tipi di bug.

I passaggi principali sono:

  1. Trova il canale giusto da fiutare.
  2. Cattura il traffico.
  3. Condividi l'acquisizione e un hash della tua password WLAN.

1. Determinare il canale e la larghezza giusti

Le reti WLAN funzionano su:

  • un canale, solitamente indicato con un numero. da 1 a 13 per i canali a 2,4 GHz, 36-200 per i canali da 5 GHz
  • con larghezza specifica (20 Mhz, 40 Mhz, 80 Mhz, 160 MHz)

Ogni punto di accesso (ad esempio router, nodo mesh) nella tua rete ha in genere un canale univoco da 2,4 GHz e uno da 5 GHz e devi sapere a quale è connesso il dispositivo. Esistono varie opzioni:

Utilizza il pannello di controllo del router

Se usi Nest WiFi, ignora questa opzione perché le informazioni non vengono compromesse.

La maggior parte dei router ha un elenco di dispositivi connessi, con il canale e la larghezza utilizzati.

  1. Trova l'indirizzo IP del tuo router utilizzando questa guida.
  2. Vai all'indirizzo del router nel browser web, ad esempio http://192.168.1.1.
  3. Accedi. Non conosci la tua password? Cerca un tag sul router o usa le password del router.
  4. Cerca una pagina con un nome simile a "client" o "dispositivi collegati". Ad esempio, una pagina del router Netgear potrebbe essere simile alla seguente, o per i dispositivi Eero.

    Vista client Netgear

  5. Potresti dover cercare altrove nelle impostazioni per mappare le informazioni del passaggio 4 a un canale e a una larghezza di banda specifici. Ad esempio, un router Netgear:

    Visualizzazione canali Netgear

Usa il tuo Mac, se è già connesso allo stesso canale

Tieni premuto Opzione sulla tastiera, quindi fai clic sull'icona WLAN nell'angolo in alto a destra della barra di stato del Mac. Dovresti vedere il normale menu WLAN con alcune opzioni e informazioni aggiuntive. Dai un'occhiata alle voci di menu non disponibili e cerca quella che menziona il canale:

`Channel 60 (DFS, 5GHz, 40MHz)`

WLAN Mac

Impossibile trovare canale e larghezza

Se gli altri metodi non funzionano, puoi provare:

  1. Elenca tutti i canali utilizzati dai tuoi punti di accesso (in genere due per ogni punto di accesso 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-s per elencare le opzioni.

  2. Esegui un'acquisizione breve (anche 15 secondi) su ciascuno di questi canali, seguendo le istruzioni riportate di seguito

  3. Installa Wireshark (per assistenza, vedi Installare Wireshark).

  4. Apri ciascuna acquisizione utilizzando Wireshark, applica un filtro di visualizzazione wlan.addr == YOUR_DEVICE'S_MAC e controlla se vengono visualizzati pacchetti.

2. Avvia l'acquisizione

Importante: acquisizione del 4-way handshake

Se la sicurezza è attiva per il Wi-Fi, devi conoscere le chiavi di crittografia per decriptare i pacchetti acquisiti. Le chiavi di crittografia sono ricavate 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 il punto di accesso.

Per questo motivo, DEVI acquisire il 4-way handshake per decriptare i payload Wi-Fi. Se il dispositivo è già connesso alla rete quando avvii l'acquisizione, scollegalo e ricollegalo (o riavvialo) quando inizia lo sniffing.

Acquisisci su Mac

Tenendo premuto il tasto Opzione sulla tastiera, fai clic sull'icona WLAN, quindi seleziona "Apri diagnostica wireless...":

Acquisizione WLAN su Mac

Nella barra dei menu Diagnostica wireless, seleziona Finestra > Sniffer.

Sniffer WLAN per Mac

Imposta il canale e la larghezza sui valori recuperati in precedenza (esempio di screenshot per canale 60 e larghezza 40 MHz):

Canale e larghezza WLAN Mac

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. Un nuovo file *.pcap sarà disponibile in /var/tmp, che contiene tutto il traffico. Un nome file di esempio è: (null)_ch100_2018-11-06_10.52.01.pcap.

Acquisisci su Linux

  1. Disattiva il Wi-Fi. A questo scopo, puoi:

    • Utilizzare la GUI (consigliato)
    • Utilizzo dell'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 altro gestore di rete, apporta le modifiche necessarie.
  2. Salva questo script. Sostituisci <wlan-ifname> con il nome della tua interfaccia Wi-Fi. Questo documento presuppone che il nome dello script sia setup-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 $@
    
  3. Esegui lo script precedente e passa il canale e la larghezza di banda massima per annusare, ad esempio il canale 153 con una larghezza di banda di 80 MHz:

    ./setup-wifi-capture chan 153 80 MHz
    
  4. Apri Wireshark e ora dovresti essere in grado di acquisire i pacchetti sull'interfaccia wlan.

3. Condividi lo screenshot o il video clip

  1. Utilizza WPA PSK (Raw Key) Generator per generare un hash della password. In questo modo puoi decriptare l'acquisizione senza conoscere la tua password di solo testo.

  2. Devi condividere anche il PSK generato in modo che altri possano decriptare l'acquisizione.

Appendice

Installazione di Wireshark

Puoi installare Wireshark utilizzando apt install Wireshark su Linux o scaricarla online dal sito web di Wireshark.

Configura Wireshark per decriptare il traffico

Questa operazione non è necessaria per la condivisione dei file di acquisizione. Esegui questa operazione solo se vuoi esaminare autonomamente il traffico decriptato in Wireshark.

Con la sicurezza WPA2 sul Wi-Fi, WPA2-PSK non viene utilizzato direttamente per la crittografia e la decriptazione del traffico. Viene utilizzato in un handshake a 4 vie, che devi acquisire per decriptare i pacchetti. Tuttavia, se stai cercando di acquisire soltanto problemi di connessione alla rete Wi-Fi o cali di connettività, che possono essere estratti dai frame di gestione Wi-Fi, non è necessario acquisire l'handshake a 4 vie. In entrambi i casi, non fa male a riprenderlo.

Apri Wireshark e la pagina Preferenze (menu Wireshark > Preferenze o **Cmd+ , **).

  1. Trova la sezione "IEEE 802.11" nella categoria "Protocolli" e assicurati che l'opzione "Abilita decrittografia" sia selezionata:

    Pref. Wireshark Mac

  2. Fai clic sul pulsante Modifica accanto all'etichetta Chiavi di decrittografia.

  3. Fai clic sul pulsante "+" nell'angolo in basso a sinistra e seleziona l'opzione "wpa-pwd".

    WPA e password di Wireshark Mac

  4. Fai clic sulla colonna della chiave della riga appena creata (accanto alla stringa wpa-pwd), digita i valori WPA2 PSK e SSID nel formato <password>:<ssid>. Ad esempio, se il nome della tua rete era MyHomeNetwork e la tua WPA2 PSK era myp4ssword, digita myp4ssword:MyHomeNetwork.

    SSID Wireshark Mac

  5. Fai clic su OK per confermare

Per ulteriori informazioni, consulta la guida ufficiale di Wireshark (con screenshot) all'indirizzo Come decriptare 802.11.

Se utilizzi tshark, trasmetti i seguenti argomenti:

tshark -o wlan.enable_decryption:TRUE -o 'uat:80211_keys:"wpa-pwd","<psk>:<ssid>"'

Colorizza dati Wireshark 802.11

Su metageek.com è disponibile un pratico profilo colore 802.11: Wireshark Configuration Profile.