Wireshark installieren und konfigurieren

Quelle auf GitHub ansehen

Wireshark ist ein Open-Source-Tool, mit dem Netzwerkprotokolle im Thread-Stack decodiert werden können, z. B. IEEE 802.15.4, 6LoWPAN, IPv6, MLE (Mesh Link Einrichten), UDP und CoAP.

Das Pyspinel-Sniffer-Tool stellt eine Verbindung zu einem Thread-NCP- oder RCP-Gerät her und wandelt es in einen promiskuitiven Paket-Sniffer um. Dabei wird ein pcap-(Paketerfassungs-)Stream generiert, der direkt in Wireshark gespeichert oder gefüllt werden kann.

Informationen zur Verwendung von Wireshark mit Pyspinel finden Sie in den Empfehlungen zur Installation im nächsten Schritt. Außerdem müssen Sie Wireshark so konfigurieren, dass Thread-Pakete ordnungsgemäß angezeigt und RSSI-Messungen empfangen werden.

Wireshark installieren

Linux

Öffnen Sie ein Terminal und führen Sie die folgenden Befehle aus, um Wireshark herunterzuladen und zu installieren:

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

Wir empfehlen Wireshark als Nutzer ohne root. Konfigurieren Sie dazu das Paket neu:

sudo dpkg-reconfigure wireshark-common

Wählen Sie im Dialogfeld „Soll nicht Superuser in der Lage sein, Pakete zu erfassen?“ die Option Ja aus, fügen Sie dann den Nutzer wireshark hinzu und aktualisieren Sie die Dateiberechtigungen:

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

macOS und Windows

Laden Sie Wireshark herunter und installieren Sie es. Informationen zum Optimieren der Sicherheit für Ihr Betriebssystem finden Sie unter Wireshark – plattformspezifische Informationen zu Erfassungsberechtigungen.

Wireshark-Protokolle konfigurieren

Wählen Sie zum Konfigurieren der Protokolle in Wireshark Einstellungen... aus und maximieren Sie den Bereich Protokolle.

6LoWPAN

Wählen Sie aus der Liste der Protokolle 6LoWPAN aus und überprüfen oder ändern Sie die folgenden Einstellungen:

  1. Entfernen Sie das Häkchen bei Derive ID gemäss RFC 4944.
  2. Aktualisieren Sie Context 0 mit dem lokalen Mesh-Präfix für das Ziel-Thread-Netzwerk.

OT Sniffer Wireshark 6LoWPAN

Wireshark verwendet Kontextkonfigurationen, um die komprimierte IPv6-Adresse zu parsen und die IPv6-Quell- und -Zieladressen korrekt anzuzeigen.

Um die Adressen für andere Mesh-Präfixe anzuzeigen, die auf dem Gateway konfiguriert sind, aktualisieren Sie andere Kontext-IDs mit diesen Präfixen.

Um die Kontext-ID für ein bestimmtes On-Mesh-Präfix abzurufen, rufen Sie den Thread-Netzwerk-TLV in jeder MLE-Datenantwortnachricht auf. Beispiel:

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

COAP

Wählen Sie CoAP aus der Liste der Protokolle aus und setzen Sie CoAP UDP-Port auf 61631. Dadurch wird gewährleistet, dass TMF-Mitteilungen (z. B. Adressaufforderung) angezeigt werden.

IEEE 802.15.4

Wählen Sie aus der Liste der Protokolle IEEE 802.15.4 aus und überprüfen oder ändern Sie die folgenden Einstellungen:

  1. Setzen Sie 802.15.4 Ethertype (in Hex) auf „0x809a“.
  2. Setzen Sie die Security Suite auf „AES-128-Verschlüsselung mit 32-Bit-Integritätsschutz“.
  3. Klicken Sie neben Entschlüsselungsschlüssel auf die Schaltfläche Bearbeiten.... Dort können Sie den Masterschlüssel für das Thread-Netzwerk zur Paketentschlüsselung hinzufügen.

    1. Klicken Sie auf +, um einen Entschlüsselungsschlüssel hinzuzufügen.
    2. Geben Sie in der Spalte Entschlüsselungsschlüssel den Masterschlüssel für das Thread-Netzwerk ein.
    3. Geben Sie „1“ als Index für den Entschlüsselungsschlüssel ein.
    4. Wählen Sie Thread-Hash aus dem Listenfeld Schlüssel-Hash aus.

      OT Sniffer Wireshark IEEE 802.15.4

    5. Klicken Sie auf OK, um den Entschlüsselungsschlüssel zu speichern.

Thread

Wählen Sie aus der Liste der Protokolle Thread aus und überprüfen oder ändern Sie die folgenden Einstellungen:

  • Geben Sie als Zähler für Threadsequenz „00000000“ ein.
  • Entfernen Sie das Häkchen bei PAN-ID als erste zwei Oktette des Master-Schlüssels verwenden.
  • Klicken Sie auf das Kästchen Automatisch Thread-Sequenzzähler abrufen.

Klicken Sie auf OK, um die Protokolländerungen zu speichern.

Ein Teil des Thread-Traffics wird möglicherweise als ZigBee-Protokoll analysiert. Bearbeiten Sie die aktivierten Protokolle in Wireshark, um diese beiden Protokolle korrekt anzuzeigen:

  1. Wechseln Sie in Wireshark zu Analyze und klicken Sie dann auf Enabled Protocols.
  2. Entfernen Sie das Häkchen bei den folgenden Protokollen:

    1. LwMesh
    2. ZigBee
    3. ZigBee Green Power

Wireshark-RSSI konfigurieren

So zeigen Sie RSSI in Wireshark an:

  1. Wählen Sie Einstellungen... aus, maximieren Sie den Bereich Protokolle und klicken Sie dann auf IEEE 802.15.4.
  2. Legen Sie das FCS-Format fest:

    • Wenn IEEE 802.15.4 TAP deaktiviert ist: TI CC24xx metadata
    • Wenn IEEE 802.15.4 TAP aktiviert ist: ITU-T CRC-16. Wenn Sie dem Packet Sniffing-Leitfaden für den Nordic Semiconductor nRF52840 DK folgen, finden Sie weitere Informationen unter der Flag --tap.
  3. Klicken Sie auf OK, um die Änderungen zu speichern und zum Menü Einstellungen zurückzukehren.

  4. Wählen Sie unter Einstellungen die Option Darstellung und dann Spalten aus.

  5. Neuen Eintrag hinzufügen:

    • Titel: RSSI
    • Typ: Benutzerdefiniert
    • Felder: wpan.rssi

OT Sniffer Wireshark RSSI