Wireshark
Wireshark
Einleitung
Wireshark ist eine quelloffene Software zur Analyse von Netzwerkverkehr und umfasst neben einer grafischen Benutzeroberfläche auch die CLI-Anwendung tshark. Das Analyseprogramm unterstützt verschiedene Betriebssysteme, unter anderem Windows, Linux und macOS, und ermöglicht sowohl die Live-Auswertung des Datenverkehrs der Netzwerk-Interfaces eines Hostsystems als auch die nachträgliche Analyse von aufgenommenem Traffic. Wireshark findet in vielen Gebieten der IT Anwendung und wird unter anderem beim Reverse Engineering und der Malware-Analyse, sowie in der digitalen Forensik eingesetzt.
Anwendung
Ein großes Problem bei der forensischen Auswertung von Netzwerkdaten ist deren Flüchtigkeit. Mit Wireshark können diese volatilen Daten während des Vorfalls erfasst oder bereits aufgezeichnete Kommunikationsflüsse im Nachhinein ausgewertet werden.
Live-Forensik
Für die Auswertung von Netzwerkverkehr während eines Vorfalls sollte ein dedizierter Host aufgesetzt werden, der als Brücke zwischen dem infizierten Rechner und der Senke der Kommunikation steht. Der zur Analyse verwendete Computer könnte beispielsweise ein Laptop mit zwei Netzwerkkarten sein. Der Laptop kann direkt zum Geschädigten gebracht werden, um die forensische Untersuchung durchzuführen. Eine weitere Möglichkeit ist das Anzapfen einer Ethernetverbindung mit einem sogenannten LAN Tap, der die ausgetauschten Daten auch an einen weiteren Host sendet, wo die Daten dann ausgewertet werden können.
Wireshark sollte nicht direkt auf einem betroffenen System installiert werden. Zum einen sind viele Schadprogramme in der Lage, den Sniffer zu erkennen und stellen die Kommunikation ein. Zudem wäre die forensische Untersuchung anfechtbar. Der Rechner des Opfers ist keine forensische Umgebung und die gewonnen Ergebnisse wären deshalb nicht replizierbar.
Post-Mortem Analyse
Wurden im Rahmen der strategischen Vorbereitung Sniffer in die Netzwerktopologie eingebracht, können die während des Vorfalls aufgezeichneten Daten auch im Nachhinein ausgewertet werden. Das gängige Dateiformat ist hier PCAP (Packet CAPture), eine weitverbreiteter Dateistandard für Netzwerkdaten, der unter anderem von Tools wie tcpdump genutzt wird.
Funktionen
Filtern nach Protokollen
Mit Wiresharks Filterausdrücken lassen sich Pakete nach verschiedenen Eigenschaften wie Protokoll oder beteiligten Hosts filtern.
Im Bild rechts werden Paketdaten mit dem Filterausdruck
dns && dns.qry.name == "it-forensik.fiw.hs-wismar.de"
nach DNS Anfragen für den Hostname "it-forensik.fiw.hs-wismar.de" gefiltert.
Entschlüsselung von Paketen
Mit Wireshark können verschiedene kryptografische Protokolle dechiffriert werden, solange das für die Entschlüsselung benötigte Geheimnis vorliegt. Bei TLS/SSL Verbindungen beispielsweise müssen Wireshark entweder Preshared Secrets oder private RSA-Keys übergeben werden.
Dieser Screenshot zeigt eine entschlüsselte TLS 1.2 Verbindung, schwarz markiert ist die Anfrage des Clients und selektiert (blau) ist die Antwort des Servers.
Auswertung von VOIP-Kommunikation
Über Wireshark kann auch Internettelefonie ausgewertet werden. Dafür gibt es VOIP-spezifische Funktionen wie die Darstellung von visuellen Call-FLow Diagrammen, aus denen hervorgeht wer, wann, mit wem, wie lange telefoniert hat und die Möglichkeit, übertragene Tonspuren wiederzugeben.
Der Screenshot rechts zeigt einen solchen Callflow und den Dialog, in dem die ausgetauschten Audio-Pakete als Ton abgespielt werden können.