Fachbeitrag «Wireshark»

Dem Kabelhai auf den Zahn gefühlt

Über Wireshark:

  • Wireshark ist ein freies Programm zur Analyse und grafischen Aufbereitung von Datenprotokollen (Sniffer / Netzwerkmonitor).
  • Findet man  als Programm oder PortableAPP auf https://www.wireshark.org
  • Bei Verwendung von Wireshark die rechtliche Situation beachten: Aus Gründen des Datenschutzes ist das Abhören oder Protokollieren von fremden Funkverbindungen verboten, sofern es vom Netzbetreiber nicht explizit erlaubt wurde. Darum: In der Lehrfirma unbedingt vorher um Erlaubnis fragen.
  • Die erfassten Datenpakete werden in TCP/IP-Stack Schichten grafisch dargestellt:
    Netzzugang (MAC) / Network (IP) / Transport (Port) / Applikation (zB. HTTP)
    Wireshark zeigt bei einer Aufnahme sowohl die Protokoll-Header als auch den transportieren Inhalt an.
  • Promiscuous Mode: Wireshark schneidet sämtlichen Datenverkehr mit. D.h. er zeichnet auch Datenpakete auf, die nicht an den eigenen PC gerichtet sind. Geräte innerhalb der Kollisionsdomäne können somit abgehört werden.
  • Switches sorgen dafür, dass Netzwerkpakete dezidiert an den tatsächlichen Empfänger gesendet werden. Das erreichen sie, indem sie sich merken, an welchem Port welche MAC-Adresse zu finden ist. Demzufolge "sieht" auch eine Netzwerkkarte im Promiscuous Mode nur noch Broadcasts und an sie gerichtete Pakete. Somit ist es in solchen Netzen nicht ohne weiteres möglich, fremde Rechner auszuhorchen, ausser ihr Switch bietet  Port Mirroring an. Kein Problem hat man allerdings beim Einsatz von Hub's, da diese immer nur eine Kollisionsdomäne bilden.
  • In WLAN's den Netzwerkverkehr von fremden Personen abzuhören, geht nur in gänzlich unverschlüsselten WLAN's, wie z.B. öffentlichen Hotspots. Sobald WEP oder WPA implementiert ist, sieht man zwar die Verbindung (MAC, IP, Port), was aber in der Applikationsschicht vor sich geht, bleibt verborgen.
    Hinweis: WEP sollte nicht mehr verwendet werden, weil gehackt und unsicher.
  • Wireshark bietet Displayfilter und Capturefilter. Filter: Syntax für Filterregeln (Verknüpfungen).
  • Bei WLAN kann allenfalls der WLAN-Adapter für das Sniffing ungeeignet sein. Im Normalzustand wird jeder WLAN-Adapter nur die Datenpakete durchleiten, die an ihn adressiert sind. Hier sollte der WLAN-Adapter aber den Monitor Mode und Injections beherrschen.
  • Nutzen sie Wireshark als Diagnosetool und nicht als Spyware!

Falls Wireshark nicht funktionieren sollte oder blockiert ist, probieren sie folgendes aus: Suchen sie im Wireshark-Ordner (zu finden im Ordner «Programme») das Programmfile «wireshark.exe» und führen sie es als Administrator aus (Rechtsklick «Als Administrator ausführen»)

Warum Wireshark?

  • Um die Frage zu klären, wer auf meinem PC nach Hause "telefoniert".
  • Zur Fehlersuche oder bei der Bewertung des Kommunikationsinhalts.
  • Welcher Dienst geht über welche IP-Adresse und Portnummer
  • Der häufigste Grund, einen Netzwerkmonitor einzusetzen, sind Firewalls und andere Sicherheitsprogramme, die auch legitime Kommunikation unterbinden, wenn sie nicht richtig konfiguriert sind. Derartige Probleme lassen sich mit einem Sniffer in vielen Fällen erkennen und lösen.
  • Zu Schulungszwecken um das TCP/IP-Protokoll besser zu verstehen.

Verschlüsselte Informationen/Pakete bleiben geheim (HTTPS, TLS, SSL)

Aufgaben:

  • Installieren sie Wireshark auf ihrem Notebook.
  • Erstellen sie eine Zusammenfassung über Wireshark, insbesondere den Filterfunktionen. Laden sie ihre Dokumentation auf den BSCW-Server.
  • Analysieren sie eine Passworteingabe über ein sicheres und ein unsicheres Webformular.
    Welche Schlüsse ziehen sie daraus?
  • Analysieren sie mit Wireshark einen eigenen Webseitenaufruf.
  • Verbinden sie sich mit einem WLAN-AP und beobachten sie die Aktivitäten der anderen Teilnehmer. Handelt es sich um ein geschütztes WLAN? Was ist sichtbar und was bleibt allenfalls geheim?
  • Analysieren sie einen ARP-Broadcast (Address Resolution Protocol).
    Löschen sie dazu auf dem WIN-PC zuerst den ARP-Cache und «pingen» anschliessend einen für sie erreichbaren Host an (z.B. ein Router oder DNS-Server, der den «Echo-Request» ping nicht ignoriert)
    cmd> arp -a (ARP-Cache anzeigen)
    cmd> arp -d (ARP-Cache löschen)
    cmd> ping 192.168.1.1 (Router anpingen)

Um die Datenflut etwas einzudämmen, sollte man, wie bereits erwähnt, Filter einsetzen. Im Internet findet sich dazu viel entsprechendes Material. Hier ein paar nützliche Displayfilter:

  • ip.src==192.168.1.0/24 and ip.dst==192.168.1.0/24
    Zeigt nur den Datenverkehr im 192.168.1.0-Netzwerk
  • ip.addr == 192.168.1.15 ist identisch mit
    ip.src == 192.168.1.15 or ip.dst == 192.168.1.15
    Zeigt nur den Datenverkehr von und zu dieser IP-Adresse
  • ! ( ip.addr == 192.168.1.15 )
    Zeige allen Datenverkehr ausser den von und zu dieser IP-Adresse
  • tcp.port eq 25 or icmp
    Zeigt nur SMTP (Port25) und ICMP-Datenverkehr
  • http.request.method == "POST"
    Zeigt «Post» von einem (unverschlüsselten!) Webseitenformular

(Hinweis: Capture-Filer haben eine andere Syntax als Displayfilter)