Wireshark Tutorial Teil 4
Inhalt
Teil 1
Einleitung
Grundlagen der Datenübertragung
Installation
Teil 2
Übung 1: Ping und ICMP
Aufzeichnung starten
Testdaten erzeugen
Erste Filter
Filter erweitern
Frames im Detail
Übungsaufgaben zu Übung 1
Teil 3
Wireshark anpassen
Das Menü View
Übung 2: RTT bestimmen
Übungsaufgaben
Teil 4
Capture Filter
Syntax
Operatoren
Beispiele
Zugriff auf Inhalte ab einem Offset
Übungsaufgaben
Im Gegensatz zu einem Display Filter wirkt der Capture Filter schon beim Aufzeichen der Frames.
Nur Traffic der dem Capture Filter entspricht, wird aufgezeichnet. Capture-Filter werden eingesetzt,
wenn nur ein kleiner Teil des Datenverkehrs aufgezeichnet werden soll.
Die grundsätzliche Syntax für Capture-Filter in Wireshark sieht wie folgt aus:
[not] Filterausdruck [and|or [not] Filterausdruck ...]
Die folgenden Filterausdrücke stehen zur Verfügung:
- [src|dst] host <host>
-
Mit diesem Ausdruck kann der Traffic nach IP-Adressen gefiltert werden. Mit dem Zusatz src oder dst kann
der Filter auf eine Absender- oder Empfänger-Adresse eingegrenzt werden.
- ether [src|dst] host <host>
-
Dieser Ausdruck grenzt den Trace auf bestimmte MAC-Adressen ein. Auch hier kann auf Absender und
Empfänger eingeschränkt werden.
- gateway host <host>
-
Dieser Ausdruck filtert auf Packete, die host als Gateway/Router nutzen.
- [src|dst] net <net> [{mask <mask>}|{len <len>}]
-
Beim Filtern auf IP-Netze kann die Netzmaske klassisch oder in CIDR-Notation angegben werden.
- [tcp|udp] [src|dst] port <port>
-
Beim Filtern auf IP-Portnummern kann das Protokoll auf UDP oder TCP eingegrenzt werden. Ohne die Angabe des
Protokolles werden UDP- und TCP-Segmente aufgezeichnet. Das ist bei Protokollen interessant,
die sowohl UDP als auch TCP nutzen (z.B. DNS auf Port 53).
- less|greater <length>
-
Dieser Filter lässt nur Frames passieren, die die angegebene Größe haben.
- ip|ether proto <protocol>
-
Über den Zugriff auf die Ethernet- und IP-Protokollnummer können beliebige Protokolle
gefiltert werden.
- ether|ip broadcast|multicast
-
Broadcasts auf dem Layer 2 oder 3 lassen sich mit diesem Ausdruck filtern.
- <expr> Ausdruck <expr>
-
Für komplexe Filter stehen alle Möglichkeiten von tcpdump zur Verfügung.
Auch in Capture Filtern erlaubt Wireshark die Nutzung einiger Operatoren.
Operator |
Beschreibung |
! oder not |
Negation |
&& oder and |
logische UND-Verknüpfung |
|| oder or |
logische ODER-Verknüpfung |
& |
bitweise UND-Verknüpfung |
Mit ein paar Beispielen wird die Wirkungsweise eines Capture-Filters schnell klar.
Filter |
Resultat |
host 192.168.178.1 |
Liefert alle Pakete von und zum Host mit der IP-Adresse 192.168.178.1. |
src host 192.168.178.1 |
Filter auf Pakete die von der IP-Adresse 192.168.178.1 kommen. |
dst host 192.168.178.1 |
Nur Pakete die an die IP 192.168.178.1 gerichtet sind, werden durchgelassen. |
port 22 |
Filtert auf alle SSH-Pakete. |
src port 22 |
Nur Pakete mit dem Absender-Port 22 werden aufgezeichnet. |
host 192.168.0.1 && port 53 |
Hier werden zwei Ausdrücke UND-verknüpft. Der Filter spricht auf DNS-Traffic
der IP-Adresse 192.168.0.1 an. |
Diese Filter lassen sich in Wireshark und auch tshark nutzen.
Neben den vordefinierten Filterausdrücken erlaubt Wireshark den Zugriff auf alle Inhalte
eines Frames. Dazu können Bytes ab einem Offset maskiert und verglichen werden.
Die Syntax für diesen Zugriff lautet:
protokoll[Offset in Bytes vom Beginn des Headers:Anzahl der Bytes]
Es können 1, 2 oder 4 Bytes verglichen werden. Wird keine Anzahl angegeben, wird nur 1 Byte verglichen.
Der Vergleichswert kann dezimal oder hexadezimal (0x) angegeben werden. Hier einige Beispiele.
ip[8] = 1 |
Filter auf das 8 Bytes des IP-Headers (TTL) |
tcp[0:2] = 22 |
Filter auf die ersten beiden Bytes des TCP-Headers (Port-Nummer) |
tcp[13] = 2 |
Filter auf Byte 13 des TCP-Headers (Flags). Segemente die nur das SYN-Flag gesetzt haben passieren diesen Filter. |
tcp[13] & 0x02 = 2 |
Hier wird das Byte 13 zuerst mit 0x02 maskiert. Dadurch passieren alle TCP-Segemente mit gesetztem
SYN-Flag den Filter. Die anderen Flags sind ausgeblendet. |
Mit den folgenden Übungen wollen wir unser Wissen zu Capture-Filtern festigen. Posten Sie
die Lösungen zu den Aufgaben doch einfach mal ins Forum.
- Schreiben und Testen Sie einen Capture-Filter, der nur IP-Pakete mit einer TTL
größer 240 aufzeichnet.
- Entwerfen Sie einen Capture-Filter, der nur Zugriffe auf nicht vorhandere Webseiten von
www.nwlab.net passieren lässt.
- Zeichnen Sie mit einem Capture-Filter alle ICMP-Pakete außer Pings auf.
Hilfe im Forum
Im Netzwerkforum erhalten Sie Hilfe zur Nutzung von Wireshark.
- Fragen zur Installation und Benutzung von Wireshark posten Sie bitte
an das Forum Tools.
- Fragen zur Netzwerkprotokollen und Protokollanalyse posten Sie bitte
an das Forum Netzwerkprotokolle und Dienste.
|