Acquisisci il traffico WLAN

La cattura dei pacchetti Wi-Fi ti consente di vedere dettagli e interazioni che altrimenti sarebbero nascosti prima che raggiungano il software in esecuzione su un dispositivo, rendendo queste acquisizioni uno strumento importante per alcuni tipi di bug.

I passaggi principali sono:

  1. Trova il canale giusto da analizzare.
  2. Acquisisci il traffico.
  3. Condividi la cattura e un hash della password della WLAN.

1. Determinare il canale e la larghezza giusti

Le reti WLAN funzionano su:

  • un canale, a cui in genere viene associato un numero. 1-13 per canali a 2,4 GHz, 36-200 per 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) della rete in genere ha un canale 2,4 GHz e un canale 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: le informazioni non sono esposte.

La maggior parte dei router ha un elenco dei dispositivi connessi e del canale e della larghezza che stanno utilizzando.

  1. Trova l'indirizzo IP del 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 utilizza Router Passwords.
  4. Cerca una pagina denominata ad esempio "client" o "dispositivi collegati". Ad esempio, la pagina di un router Netgear potrebbe avere il seguente aspetto o essere relativa ai dispositivi Eero.

    Visualizzazione cliente Netgear

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

    Visualizzazione Canali Netgear

Utilizza 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 altre opzioni e informazioni. Dai un'occhiata agli elementi del menu non disponibili e cerca quello che fa riferimento al canale:

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

WLAN Mac

Impossibile trovare canale e larghezza

Se gli altri metodi non funzionano, puoi provare a:

  1. Elenca tutti i canali utilizzati dai tuoi AP (in genere 2 per ogni AP o punto di accesso mesh).

    a. Consigliato Con uno smartphone Android, puoi utilizzare un'app come Wifiman Aruba Utilities.

    a. Su un Mac, puoi utilizzare /System/Library/PrivateFrameworks/Apple80211.framework/Resources/airport-s per elencare le opzioni.

  2. Esegui una breve registrazione (anche 15 secondi sono sufficienti) su ciascuno di questi canali seguendo le istruzioni riportate di seguito

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

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

2. Avvia l'acquisizione

Importante: acquisire il handshake a quattro vie

Se la sicurezza è attiva per il Wi-Fi, devi conoscere le chiavi di crittografia per decriptare i pacchetti acquisiti. Le chiavi di crittografia derivano da un handshake a 4 vie che si verifica quando il dispositivo si connette alla rete e sono uniche per ogni connessione tra un dispositivo e l'AP.

Per questo motivo, DEVI acquisire l'handshake a quattro vie per decriptare i payload Wi-Fi. Se il dispositivo è già connesso alla rete quando avvii la cattura, disconnettilo e ricollegalo (o riavvialo) quando inizia lo sniffing.

Acquisisci su Mac

Tenendo premuto il tasto Opzione sulla tastiera, fai clic sull'icona WLAN e seleziona "Apri Diagnostica wireless…":

Acquisizione WLAN Mac

Nella barra dei menu di Diagnostica wireless, seleziona Finestra > Sniffer:

Sniffer WLAN per Mac

Imposta il canale e la larghezza sui valori recuperati in precedenza (l'esempio dello screenshot riguarda il canale 60 e la larghezza 40 MHz):

Canale e larghezza della rete WLAN Mac

Premi Start e inserisci la password. Ora prova a riprodurre il problema. Assicurati di acquisire l'handshake a quattro vie da una connessione come indicato in Acquisizione dell'handshake a quattro vie.

Al termine, premi Stop. In /var/tmp puoi trovare un nuovo file *.pcap che contiene tutto il traffico. Un esempio di nome file è: (null)_ch100_2018-11-06_10.52.01.pcap.

Acquisisci su Linux

  1. Disattiva il Wi-Fi. Puoi farlo in uno dei seguenti modi:

    • Utilizzo della GUI (opzione consigliata)
    • Utilizzo dell'interfaccia a riga di comando Network Manager per indicare di interrompere la gestione dell'interfaccia WLAN: sudo nmcli dev set <wlan-ifname> managed on
    • Se utilizzi un gestore di rete alternativo, regola di conseguenza.
  2. Salva questo script. Sostituisci <wlan-ifname> con il nome dell'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 da sniffare, 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. Condividere lo screenshot o il video clip

  1. Utilizza il generatore di chiavi WPA PSK (chiave non elaborata) per generare un hash della password. In questo modo puoi decriptare la cattura senza conoscere la password in testo normale.

  2. Devi anche condividere il PSK generato in modo che altri possano decriptare la cattura.

Appendice

Installa 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 condividere i file di acquisizione. Eseguila 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 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 del Wi-Fi, non è necessario acquisire il handshake a 4 vie. In ogni caso, non fa male acquisire comunque l'immagine.

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

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

    Preferenze di Wireshark per 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".

    Mac Wireshark WPA e password

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

    SSID di Wireshark per 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, 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

Su metageek.com è disponibile un pratico profilo di colore 802.11: Profilo di configurazione di Wireshark.