Installa e configura Wireshark

Visualizza sorgente su GitHub

Wireshark è uno strumento open source in grado di decodificare i protocolli di rete nello stack Thread, come IEEE 802.15.4, 6LoWPAN, IPv6, MLE (Mesh Link Establishment), UDP, e CoAP.

Lo strumento Pyspinel storyboard si connette a un dispositivo Thread NCP o RCP e lo converte in uno storyboard promiscuo, generando un flusso pcap (acquisizione di pacchetti) da salvare o instradare direttamente a Wireshark.

Per utilizzare Wireshark con Pyspinel, consulta i consigli di installazione nel passaggio successivo. Devi anche configurare Wireshark per mostrare correttamente i pacchetti Thread e ricevere misurazioni RSSI.

Installare Wireshark

Linux

Apri un terminale ed esegui i seguenti comandi per scaricare e installare Wireshark:

sudo add-apt-repository ppa:wireshark-dev/stable
sudo apt-get update
sudo apt-get install wireshark

Consigliamo di eseguire Wireshark come utente non root. Per farlo, riconfigura il pacchetto:

sudo dpkg-reconfigure wireshark-common

Quando viene visualizzata la finestra di dialogo con la richiesta "I super user non possono acquisire pacchetti?", seleziona , quindi aggiungi l'utente wireshark e aggiorna le autorizzazioni relative ai file.

sudo adduser $USER wireshark
sudo chmod +x /usr/bin/dumpcap

macOS e Windows

Scarica e installa Wireshark. Per ottimizzare la sicurezza per il tuo sistema operativo, consulta Wireshark: informazioni specifiche sulla piattaforma relative ai privilegi di acquisizione.

Configura protocolli Wireshark

Per configurare i protocolli, seleziona Preferenze... in Wireshark ed espandi la sezione Protocolli.

6LoWPAN

Seleziona 6LoWPAN dall'elenco dei protocolli e verifica o modifica le seguenti impostazioni:

  1. Deseleziona ID derivazione secondo RFC 4944.
  2. Aggiorna Contesto 0 con il prefisso locale mesh per la rete Thread di destinazione.

OT Sniffer Wireshark 6LoWPAN:

Wireshark utilizza le configurazioni del contesto per analizzare l'indirizzo IPv6 compresso e visualizzare correttamente gli indirizzi di origine e di destinazione IPv6.

Per mostrare gli indirizzi di altri prefissi on-mesh configurati nel gateway, aggiorna gli altri ID contesto con tali prefissi.

Per ottenere l'ID contesto per un prefisso specifico della rete mesh, visualizza il TLV dei dati di rete di thread in qualsiasi messaggio di risposta dei dati MLE. Ad esempio:

Context 1: fd00:7d03:7d03:7d03::/64

Copa Airlines

Seleziona CoAP dall'elenco dei protocolli e imposta CoAP UDP Port su 61631. Questo garantisce la visualizzazione di messaggi TMF (ad esempio, richieste di indirizzi).

IEEE 802 15.4

Seleziona IEEE 802.15.4 dall'elenco dei protocolli e verifica o modifica le seguenti impostazioni:

  1. Imposta 802.15.4 Ethertype (in esadecimale) su "0x809a".
  2. Imposta Suite per la sicurezza su "Crittografia AES-128, protezione dell'integrità a 32 bit".
  3. Fai clic sul pulsante Edit... (Modifica) accanto a Decryption Keys (Chiavi di decriptazione), dove viene aggiunta la chiave master della rete Thread per la decriptazione dei pacchetti.

    1. Fai clic su + per aggiungere una chiave di decriptazione.
    2. Inserisci la chiave master della rete Thread nella colonna Decryption key (Chiave di decriptazione).
    3. Inserisci "1" come indice della chiave di decriptazione.
    4. Seleziona Hash del thread dalla casella di riepilogo della colonna Hash chiave.

      OT Sniffer Wireshark IEEE 802.15.4

    5. Fai clic su OK per salvare la chiave di decriptazione.

Thread

Seleziona Thread dall'elenco dei protocolli e verifica o modifica le seguenti impostazioni:

  • Inserisci "00000000" per il Contatore delle sequenze dei thread.
  • Deseleziona Utilizza l'ID PAN come primi due ottetti della chiave master.
  • Seleziona Acquisisce automaticamente il contatore della sequenza di thread.

Fai clic sul pulsante OK per salvare le modifiche apportate al protocollo.

Una parte del traffico di Thread potrebbe essere analizzata come protocollo ZigBee. Per visualizzare correttamente questi due protocolli, modifica i protocolli abilitati in Wireshark:

  1. In Wireshark, vai ad Analizza, quindi fai clic su Protocolli abilitati.
  2. Deseleziona i seguenti protocolli:

    1. LwMesh
    2. ZigBee
    3. Energia verde ZigBee

Configura Wireshark RSSI

Per visualizzare RSSI su Wireshark:

  1. Seleziona Preferenze... ed espandi la sezione Protocolli, quindi fai clic su IEEE 802.15.4.
  2. Imposta il Formato FCS:

    • Se IEEE 802.15.4 TAP è disattivato: Metadati TI CC24xx.
    • Se IEEE 802.15.4 TAP è abilitato: ITU-T CRC-16. Se stai seguendoSniffing del pacchetto per nRF52840 DK, nordic Semiconductor, consulta le--tap flag per ulteriori informazioni.
  3. Fai clic su OK per salvare e tornare al menu Preferenze.

  4. Da Preferenze, seleziona Aspetto e poi Colonne.

  5. Aggiungere una nuova voce:

    • Titolo: RSSI
    • Tipo: personalizzato
    • Campi: wpan.rssi

OT Sniffer Wireshark RSSI