|
|
(108 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) |
Zeile 1: |
Zeile 1: |
| '''Wireshark''' ist eine freie Software zur Analyse und grafischen Aufbereitung von Datenprotokollen | | '''Wireshark''' - Analyse und grafischen Aufbereitung von Datenprotokollen |
|
| |
|
| === Beschreibung ===
| | == Beschreibung == |
| [[Datei:Wireshark Logo.svg|mini|300px|Wireshark Logo]] | | [[Datei:Wireshark Logo.svg|mini|200px]] |
|
| |
|
| '''Wireshark''' ({{enS|wire}} „[[Draht]]“, „[[Kabel]]“ und ''{{lang|en|shark}}'' „[[Haie|Hai]]“) ist eine [[freie Software]] zur Analyse und grafischen Aufbereitung von Datenprotokollen ([[Sniffer]]), die 2006 als [[Abspaltung (Softwareentwicklung)|Fork]] des Programms '''Ethereal''' (englisch „himmlisch“, „[[Äther (Physik)|ätherisch]]“, Anspielung auf [[Ethernet]]) entstanden ist. | | '''Wireshark''' (Kabelhai) ist eine [[freie Software]] zur Analyse und grafischen Aufbereitung von Datenprotokollen ([[Sniffer]]), die 2006 als [[Abspaltung (Softwareentwicklung)|Fork]] des Programms '''Ethereal''' entstanden ist |
| * Solche [[Netzwerkprotokoll|Datenprotokolle]] verwenden Computer auf verschiedensten Kommunikationsmedien wie dem lokalen Netzwerk, [[Bluetooth]] oder [[USB]]. | | * [[Netzwerkprotokoll|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 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-[[Header|Kopf]] als auch den übertragenen Inhalt 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 |
| | * Datenprotokolle verwenden Computer auf verschiedensten Kommunikationsmedien wie dem lokalen Netzwerk, Bluetooth oder USB |
| | * Hilft bei der Suche nach Netzwerkproblemen, der Ermittlung von Botnet-Verbindungen oder beim Netzwerk-Management |
| | * Wireshark zeigt bei einer Aufnahme sowohl den Protokoll-Kopf als auch den übertragenen Inhalt an |
| | * Das Programm stützt sich bei der grafischen Aufbereitung auf die Ausgabe von kleinen Unterprogrammen wie '''pcap''' oder '''usbpcap''' |
| | * Der Inhalt der Kommunikation auf dem jeweiligen Übertragungsmedium wird mitgeschnitten |
| | * Hersteller: Wireshark-Community |
| | * Betriebssystem: [[Unix]], [[Linux]], [[Solaris (Betriebssystem)|Solaris]], [[macOS|Mac]], [[Microsoft Windows|Windows]] und diversen [[Berkeley Software Distribution|BSD]]-Versionen |
| | * Programmiersprache: [[C (Programmiersprache)|C]] |
| | * Lizenz: [[GNU General Public License|GPL]] ([[freie Software]]) |
|
| |
|
| Wireshark zeigt bei einer Aufnahme sowohl den Protokoll-[[Header|Kopf]] als auch den übertragenen Inhalt an. | | ; Leistungsmerkmale |
| * 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.
| | Wireshark fügt bei verschiedenen Protokollen Metainformationen zu Paketen hinzu, die sich nur aus dem Kontext des Datenflusses ergeben |
| | * So wird zu [[Server Message Block|SMB]]-Paketen, die aus Operationen in Windows-Dateifreigaben stammen, der [[Datei]]- bzw. [[Verzeichnisstruktur|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 |
|
| |
|
| * Datenprotokolle verwenden Computer auf verschiedensten Kommunikationsmedien wie dem lokalen Netzwerk, Bluetooth oder USB.
| | <noinclude> |
| * Hilft bei der Suche nach Netzwerkproblemen, der Ermittlung von Botnet-Verbindungen oder beim Netzwerk-Management.
| |
| * Wireshark zeigt bei einer Aufnahme sowohl den Protokoll-Kopf als auch den übertragenen Inhalt an.
| |
| * Das Programm stützt sich bei der grafischen Aufbereitung auf die Ausgabe von kleinen Unterprogrammen wie '''pcap''' oder '''usbpcap'''.
| |
| * Der Inhalt der Kommunikation auf dem jeweiligen Übertragungsmedium wird mitgeschnitten.
| |
|
| |
|
| ; Wikipedia
| | == Anhang == |
| * Hersteller = Wireshark-Community
| | === Siehe auch === |
| * Betriebssystem = [[Unix]], [[Linux]], [[Solaris (Betriebssystem)|Solaris]], [[macOS|Mac]], [[Microsoft Windows|Windows]] und diversen [[Berkeley Software Distribution|BSD]]-Versionen
| | {{Special:PrefixIndex/{{BASEPAGENAME}}}} |
| * Programmiersprache = [[C (Programmiersprache)|C]]
| | ==== Links ==== |
| * Lizenz = [[GNU General Public License|GPL]] ([[freie Software]])
| | ===== Projekt ===== |
| | | # https://www.wireshark.org |
| === Technische Details === | | ===== Weblinks ===== |
| Das Werkzeug ''Wireshark'' stellt entweder während oder nach der Aufzeichnung von Datenverkehr einer Netzwerk-Schnittstelle die Daten in Form einzelner [[Datenpaket|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 [[Internetprotokollfamilie]]n 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.<ref name="wireusb">{{Internetquelle |url=https://wiki.wireshark.org/CaptureSetup/USB |titel=USB capture setup |abruf=2018-06-17}}</ref> Unter [[Microsoft Windows|Windows]] zeichnet ''Wireshark'' den Datenverkehr ab Version 3.0 [[Transparenz (Computersystem)|transparent]] mit Hilfe von Npcap<ref>{{Internetquelle |url=https://www.wireshark.org/news/20190228.html |titel=Wireshark · Wireshark 3.0.0 Released |abruf=2019-05-15}}</ref> 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.
| |
| | |
| == Besondere Leistungsmerkmale == | |
| Wireshark fügt bei verschiedenen Protokollen Metainformationen zu Paketen hinzu, die sich nur aus dem Kontext des Datenflusses ergeben.
| |
| * So wird zu [[Server Message Block|SMB]]-Paketen, die aus Operationen in Windows-Dateifreigaben stammen, der [[Datei]]- bzw. [[Verzeichnisstruktur|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.
| |
| | |
| == Oberfläche == | |
| ===Hauptfenster von Wireshark=== | |
| * Paketliste (engl. packet list pane)
| |
| * Paketdetails (engl. packet details pane) und
| |
| * Hexadezimale Paketanzeige (engl. packet bytes pane).
| |
| | |
| === Menü-Übersicht ===
| |
| * Im Menü ''Ansicht'' können einige Eigenschaften der Anzeige verändert werden.
| |
| * So kann die Anzahl und Art der Paketfenster bestimmt werden
| |
| * Nützlich ist die Umschaltung des Formates der Zeitanzeige: ''Ansicht/Format der Zeitanzeige''.
| |
| * Über ''Ansicht/Paketliste einfärben'' kann das Einfärben der Frames aktiviert/deaktiviert werden.
| |
| | |
| ===Paketliste===
| |
| * Die Spalte ''No.'' zeigt die Nummer des Frames an.
| |
| * Durch den aktiven Filter müssen die Nummern jetzt nicht fortlaufend sein.
| |
| * Die Spalte ''Source'' zeigt den Absender eine Frames an.
| |
| * In der Spalte ''Destination'' steht der Empfänger des Frames.
| |
| * Die Spalte ''Protocol'' gibt das Protokoll in diesem Frame an.
| |
| * Die Spalte ''Info'' enthält zusätzliche Angaben zum Frame.
| |
| * Alle ICMP Echo Request sollten von unserer eigenen IP-Adresse zu einer anderen IP-Adresse laufen.
| |
| * Die ICMP Echo Replies sollten als Source eine andere IP enthalten.
| |
| | |
| Spalten der Paketliste können über die Menüauswahl ''Ansicht'' ausgewählt werden.
| |
| | |
| ===Paketdetails===
| |
| * Im mittleren Teil des Bildschirms werden die Details zum ausgewählten Frame angezeigt.
| |
| * Zuerst ein ICMP Echo Request in der Paketliste auswählen.
| |
| * In den Paketdetails werden die Layer (Schichten) des Datenframes angezeigt.
| |
| * Durch Anklicken des Plus-Symbols kann der gewählte Layer erweitert werden.
| |
| * Ganz oben in den Paketdetails findet man Informationen von Wireshark zum betreffenden Frame:
| |
| # Größe des Frames,
| |
| # Aufgezeichnete Größe (Slicing),
| |
| # Zeit und Zeitdifferenz zum vorhergehenden Frame.
| |
| Frame 6086 (74 bytes on wire, 74 bytes captured)
| |
| Arrival Time: Feb 23, 2006 15:18:20.081749000
| |
| Time delta from previous packet: 3211.323936000 seconds
| |
| Time since reference or first frame: 3211.323936000 seconds
| |
| Frame Number: 6086
| |
| Packet Length: 74 bytes
| |
| Capture Length: 74 bytes
| |
| Protocols in frame: eth:ip:icmp:data
| |
| * Die nächste Zeile liefert Informationen zum OSI-02 (Ethernet).
| |
| * Dort sind die MAC-Adressen von Absender und Empfänger.
| |
| ** Die MAC-Adresse des Empfängers wird im Normalfall die MAC-Adresse des Default Routers sein.
| |
| Ethernet II, Src: 192.168.2.157 (00:30:f1:ee:90:7b), Dst: 192.168.2.1 (00:30:f1:f5:0e:5b)
| |
| Destination: 192.168.2.1 (00:30:f1:f5:0e:5b)
| |
| Source: 192.168.2.157 (00:30:f1:ee:90:7b)
| |
| Type: IP (0x0800)
| |
| * 03: Internet Protocol (IP).
| |
| * Dort sind Angaben wie IP-Flags, die Time to live (TTL), das Protokoll und Absender- und Empfänger-IP-Adressen.
| |
| Internet Protocol, Src: 192.168.2.157 (192.168.2.157), Dst: 66.249.93.104 (66.249.93.104)
| |
| Version: 4
| |
| Header length: 20 bytes
| |
| Differentiated Services Field: 0x00 (DSCP 0x00: Default; ECN: 0x00)
| |
| 0000 00.. = Differentiated Services Codepoint: Default (0x00)
| |
| .... ..0. = ECN-Capable Transport (ECT): 0
| |
| .... ...0 = ECN-CE: 0
| |
| Total Length: 60
| |
| Identification: 0x0fd3 (4051)
| |
| Flags: 0x00
| |
| 0... = Reserved bit: Not set
| |
| .0.. = Don't fragment: Not set
| |
| ..0. = More fragments: Not set
| |
| Fragment offset: 0
| |
| Time to live: 128
| |
| Protocol: ICMP (0x01)
| |
| Header checksum: 0xc747 [correct]
| |
| Good: True
| |
| Bad : False
| |
| Source: 192.168.2.157 (192.168.2.157)
| |
| Destination: 66.249.93.104 (66.249.93.104)
| |
| * In der letzten Zeile in den Paketdetails wird das Internet Control Message Protocol (ICMP) dekodiert.
| |
| * ICMP nutzt eine Codierung, bestehend aus Type und Code.
| |
| ** Type 8, Code 0 ist ein ICMP Echo Request.
| |
| Internet Control Message Protocol
| |
| Type: 8 (Echo (ping) request)
| |
| Code: 0
| |
| Checksum: 0x475c [correct]
| |
| Identifier: 0x0300
| |
| Sequence number: 0x0300
| |
| Data (32 bytes)
| |
| * Im Hexdump des Frames ist zu erkennen, dass Windows beim Ping das Alphabet als Nutzlast (Payload) benutzt.
| |
| 0000 00 30 f1 f5 0e 5b 00 30 f1 ee 90 7b 08 00 45 00 .0...[.0...{..E.
| |
| 0010 00 3c 0f d3 00 00 80 01 c7 47 c0 a8 02 9d 42 f9 .........G....B.
| |
| 0020 5d 68 08 00 47 5c 03 00 03 00 61 62 63 64 65 66 ]h..G\....abcdef
| |
| 0030 67 68 69 6a 6b 6c 6d 6e 6f 70 71 72 73 74 75 76 ghijklmnopqrstuv
| |
| 0040 77 61 62 63 64 65 66 67 68 69 wabcdefghi
| |
| | |
| == Anwendungen ==
| |
| === Filter ===
| |
| ====Display-Filter====
| |
| Netzwerkverkehr aufzeichnen, filtern und auswerten.
| |
| *Zeigt nur STMP (Port 25) und ICMP-Traffic
| |
| | |
| [[Datei:start_ws.png|mini|500px]]
| |
| | |
| * Schaltfläche ''...mit diesem Filter:'' wird der Filter eingegeben, mit dem gesucht werden soll.
| |
| * Anschließend die gewünschte (aktive) Verbindung auswählen.
| |
| * Die Aufzeichnung der Datenübertragung starten.
| |
| * Die Aufzeichnung läuft und Wireshark zeigt in einem Statusfenster die Anzahl der aufgezeichneten Frames (Captured Packets) an.
| |
| | |
| [[Datei:stopp_ws.png|mini|500px]]
| |
| | |
| * Datenübertragung stoppen.
| |
| | |
| ===Filter===
| |
| [[Datei:ip_adr_ws.png|mini|500px|Filtern]]
| |
| * Das wichtigste Instrument zum Auswerten von Traces sind Filter.
| |
| * Mit Filtern wird die Anzeige auf die interessanten Frames eingeschränkt.
| |
| * Um nur noch Traffic von und zu unserer eigenen IP-Adresse zu sehen, geben wir im Eingabefeld Filter von Wireshark folgenden Ausdruck ein:
| |
| ip.addr == 192.168.1.2
| |
| | |
| * Als IP-Adresse setzen wir die IP-Adresse des Sniffers ein, also unsere eigene.
| |
| * Wireshark zeigt nun nur noch Frames an, die diese Filterbedingung erfüllen.
| |
| * Mit der Schaltfläche ''Clear'' kann die Filterbedingung gelöscht werden.
| |
| | |
| ====Filter erweitern====
| |
| [[Datei:icmp_ws.png|mini|600px|ICMP-Pakete]]
| |
| * Anzeige weiter einschränken:
| |
| ** Nur der Traffic des Ping-Kommandos ist interessant.
| |
| ** Ping nutzt ein Protokoll namens ICMP.
| |
| ** Filterbedingung entsprechend erweitern:
| |
| ip.addr == 192.168.1.2 && icmp
| |
| * Mit dem Operator '''&&''' werden die einzelnen Filterbedingungen UND-verknüpft.
| |
| * '''icmp''' schränkt die Anzeige auf das Protokoll ICMP ein
| |
| * In der Anzeige sind jetzt nur noch ICMP-Pakete unserer eigenen IP-Adresse zu sehen.
| |
| | |
| ===Testdaten erzeugen===
| |
| ; Beispiel
| |
| * Ping auf den Host www.google.de
| |
| * In einer Shell oder Eingabeaufforderung das Kommando ping www.google.de eingeben.
| |
| $ ping www.google.de
| |
| Ping www.google.de [66.249.93.104] mit 32 Bytes Daten:
| |
| Antwort von 66.249.93.104: Bytes=32 Zeit=76ms TTL=243
| |
| Antwort von 66.249.93.104: Bytes=32 Zeit=77ms TTL=243
| |
| Antwort von 66.249.93.104: Bytes=32 Zeit=75ms TTL=244
| |
| Antwort von 66.249.93.104: Bytes=32 Zeit=75ms TTL=243
| |
| Ping-Statistik für 66.249.93.104:
| |
| Pakete: Gesendet = 4, Empfangen = 4, Verloren = 0 (0% Verlust),
| |
| Ca. Zeitangaben in Millisek.:
| |
| Minimum = 75ms, Maximum = 77ms, Mittelwert = 75ms
| |
| * Jetzt halten wir die Datenaufzeichnung im Wireshark mit der Schaltfläche ''Stop'' an.
| |
| * Wireshark bereitet die aufgezeichneten Frames nun auf und zeigt sie an.
| |
| * Da beim Aufzeichnen keinen Filter gesetzt wurde, ist sämtlicher Netzwerkverkehr mitgeschnitten worden.
| |
| | |
| | |
| === Fehlerbehebung ===
| |
| | |
| == Syntax ==
| |
| === Optionen ===
| |
| === Parameter ===
| |
| === Umgebungsvariablen ===
| |
| === Exit-Status ===
| |
| == Konfiguration ==
| |
| === Dateien ===
| |
| == Sicherheit ==
| |
| == Dokumentation == | |
| === RFC ===
| |
| === Man-Pages ===
| |
| === Info-Pages ===
| |
| == Siehe auch ==
| |
| == Links ==
| |
| === Interne Links ===
| |
| | |
| === Weblinks ===
| |
| # https://de.wikipedia.org/wiki/Wireshark | | # https://de.wikipedia.org/wiki/Wireshark |
| # http://www.nwlab.net/tutorials/wireshark
| |
| # [//www.admin-magazin.de/Das-Heft/2011/05/Netzwerkanalyse-mit-Wireshark Netzwerkanalyse mit Wireshark] – ''[[Admin-Magazin]]'', aus der Ausgabe 05/2011
| |
| # [https://www.butschek.de/oldblog/fachartikel/tcpdump-wireshark/ Analyse mit tcpdump/wireshark] – ''Butschek.de'', am 24. April 2009
| |
| # [//www.computerwoche.de/produkte_technik/open_source/582469/ Wireshark – günstige Sniffer-Alternative] – ''[[Computerwoche]]'', am 11. Oktober 2006
| |
| # [http://www.easy-network.de/ethereal.html Ethereal (Wireshark) Tutorial] – Seite bei ''Easy-Network''
| |
| # [http://www.nwlab.net/tutorials/wireshark/ Wireshark Tutorial Teil 1] – Seite bei ''Network Lab''
| |
| # [https://www.wireshark.org Wireshark-Homepage]
| |
| # [http://sourceforge.net/projects/packetyzer/ Packetyzer] – alternative Oberfläche für Ethereal (Windows)
| |
|
| |
| === Projekt-Homepage ===
| |
| # https://www.wireshark.org
| |
|
| |
| === Weblinks ===
| |
| === Einzelnachweise ===
| |
| <references />
| |
|
| |
| == Testfragen ==
| |
| <div class="toccolours mw-collapsible mw-collapsed">
| |
| ''Testfrage 1''
| |
| <div class="mw-collapsible-content">'''Antwort1'''</div>
| |
| </div>
| |
| <div class="toccolours mw-collapsible mw-collapsed">
| |
| ''Testfrage 2''
| |
| <div class="mw-collapsible-content">'''Antwort2'''</div>
| |
| </div>
| |
| <div class="toccolours mw-collapsible mw-collapsed">
| |
| ''Testfrage 3''
| |
| <div class="mw-collapsible-content">'''Antwort3'''</div>
| |
| </div>
| |
| <div class="toccolours mw-collapsible mw-collapsed">
| |
| ''Testfrage 4''
| |
| <div class="mw-collapsible-content">'''Antwort4'''</div>
| |
| </div>
| |
| <div class="toccolours mw-collapsible mw-collapsed">
| |
| ''Testfrage 5''
| |
| <div class="mw-collapsible-content">'''Antwort5'''</div>
| |
| </div>
| |
|
| |
| [[Kategorie:Entwurf]]
| |
|
| |
|
| |
| [[Kategorie:Netzwerke:Analyse]]
| |
|
| |
|
| [[Kategorie:Netzwerksniffer]] | | [[Kategorie:Wireshark]] |
| [[Kategorie:Freie Sicherheitssoftware]]
| | </noinclude> |