# Wireshark

Wireshark (englisch wire „Draht“, „Kabel“ und shark „Hai“) ist eine freie Software zur Analyse und grafischen Aufbereitung von Datenprotokollen (erstellt mittels Sniffer), die 1998 unter dem Namen Ethereal (englisch „himmlisch“, „ätherisch“, Anspielung auf Ethernet) entstanden ist und 2006 in Wireshark umbenannt wurde. Solche Datenprotokolle verwenden Computer auf verschiedensten Kommunikationsmedien wie dem lokalen Netzwerk, Bluetooth oder USB. Das Netzwerk-Analyse-Tool kann Administratoren, Netzwerk-Experten und Sicherheits-Experten bei der Suche nach Netzwerkproblemen, der Ermittlung von Botnet-Verbindungen oder beim Netzwerk-Management behilflich sein.
Wireshark zeigt bei einer Aufnahme sowohl den Protokoll-Kopf als auch die übertragenen Nutzdaten an. Das Programm stützt sich bei der grafischen Aufbereitung auf die Ausgabe von kleinen Unterprogrammen wie pcap oder usbpcap, um den Inhalt der Kommunikation auf dem jeweiligen Übertragungsmedium mitzuschneiden.

## Technische Details

Das Werkzeug Wireshark stellt entweder während oder nach der Aufzeichnung von Datenverkehr einer Netzwerk-Schnittstelle die Daten in Form einzelner Pakete dar. Dabei werden die Daten übersichtlich mit entsprechend auf die jeweiligen Protokolle angepassten Filtern aufbereitet. So kann der Inhalt der mitgeschnittenen Pakete betrachtet oder nach diesem gefiltert werden. Wireshark kann auch Statistiken zum Datenfluss erstellen oder über spezielle Filter gezielt binäre Inhalte wie Bilder u. a. extrahieren.
Als Netzwerkschnittstellen, deren Datenverkehr analysiert werden kann, sind primär Ethernet mit den verschiedenen Internetprotokollfamilien wie TCP/IP zu nennen. Darüber hinaus kann Wireshark auch drahtlosen Datenverkehr im Wireless Local Area Network (WLAN) und Bluetooth-Verbindungen aufzeichnen und analysieren. Über entsprechende Module lassen sich weitere übliche Schnittstellen wie USB in Wireshark integrieren. Unter Windows zeichnet Wireshark den Datenverkehr ab Version 3.0 transparent mit Hilfe von Npcap auf. Bis zur Version 3.0 wurde WinPcap verwendet. Voraussetzung dafür ist immer, dass der jeweilige Rechner, auf dem Wireshark betrieben wird, über die entsprechenden physischen Schnittstellen verfügt und der Benutzer entsprechende Zugriffsberechtigungen auf diese Schnittstellen hat.
Neben der grafischen Wireshark-Version gibt es das auf demselben Netzwerkcode basierende Tshark, das über Kommandozeilen-Optionen gesteuert wird. Für beide Versionen wurde das Aufzeichnungsformat der Messdaten von tcpdump entlehnt bzw. übernommen. Gleichwohl kann Wireshark zusätzlich die Formate anderer LAN-Analyzer einlesen.

## Geschichte

Wireshark wurde ursprünglich als Ethereal von einem Team um Gerald Combs unter der GNU General Public License als freie quelloffene Software (FOSS) entwickelt.
Als Gerald Combs von Ethereal Software Inc. zu CACE Technologies wechselte, startete er ein eigenes Folgeprojekt und nannte es Wireshark. Die erste Version von Wireshark wurde am 7. Juni 2006 mit der Versionsnummer 0.99.1 veröffentlicht.
Version 1.0 von Wireshark wurde am 31. März 2008 veröffentlicht.
Version 2.0 von Wireshark wurde am 19. November 2015 veröffentlicht. Das ganze Programm wurde auf Qt umgestellt und mit einer neuen, intuitiv bedienbaren Oberfläche versehen.
Version 3.0.0 wurde am 28. Februar 2019 veröffentlicht. Es enthält eine Reihe an kleineren Verbesserungen sowie internen Aktualisierungen. Beispielsweise wurde das Framework Qt auf den aktuellsten Stand gebracht.
Version 4.0 erschien am 4. Oktober 2022 und enthält eine Reihe an Neuerungen sowie Verbesserungen. Unter anderem zeigt die Software beim Start jene Schnittstelle mit der höchsten Netzwerkauslastung weiter oben an, damit sie leichter gefunden werden kann. Neben internen Änderungen wechselten die Filter für Datenpakete von bisher GRegex zu PCRE2. Bemerkenswert ist zudem, dass die Unterstützung von Binaries für 32-Bit-Systeme unter Windows eingestellt wurde. Wer dies benötigt (z. B. für ältere Systeme), soll laut Empfehlung der Entwickler die aktuellste Ausgabe der vorherigen 3.6 Version nutzen.

## Besondere Leistungsmerkmale

Wireshark fügt bei verschiedenen Protokollen Metainformationen zu Paketen hinzu, die sich nur aus dem Kontext des Datenflusses ergeben. So wird zu SMB-Paketen, die aus Operationen in Windows-Dateifreigaben stammen, der Datei- bzw. Verzeichnisname hinzugefügt, wenn das Öffnen der Datei mit aufgezeichnet wurde. Diese speziellen Filter und Protokollmodule kann der Benutzer auch selber erstellen, um zum Beispiel selbst entworfene Übertragungsprotokolle mittels Wireshark effizient untersuchen zu können.

## Vergangenheit und Zukunft

Vorläufer von Ethereal und Wireshark waren Netzwerk-Analyse-Produkte kommerzieller Hersteller. In Erscheinungsform und Wirkungsweise erinnert manches an diese Vorläufer, von denen einige inzwischen durch das erfolgreiche Open-Source-Projekt Ethereal/Wireshark vom Markt verdrängt und infolgedessen eingestellt worden sind.
Letztlich ist Wireshark aber ein paket- und nicht datenorientierter Sniffer, dessen Schwerpunkt die Analyse punktueller Probleme ist.