Gefilterte Pakete in Tshark exportieren

WiresharkWiresharkBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab lernen Sie, wie Sie bestimmte Netzwerkpakete mithilfe des Befehlszeilentools tshark von Wireshark filtern und exportieren können. Sie üben das Extrahieren von UDP-Paketen aus einer Beispiel-Aufnahmedatei (capture.pcap) und das Speichern dieser in einer neuen Datei (udp.pcap).

Diese Übung behandelt die wichtigsten tshark-Operationen, darunter das Öffnen von Aufnahmedateien mit -r, das Anwenden von Filtern mit -Y und das Exportieren der Ergebnisse mit -w. Sie werden auch die exportierten Pakete mithilfe einer detaillierten Analyse mit der Option -V überprüfen.

Datei mit -r capture.pcap öffnen

In diesem Schritt lernen Sie, wie Sie eine Paketaufnahmedatei mithilfe des Befehlszeilentools tshark von Wireshark öffnen können. Dies ist der erste Schritt bei der Analyse von Netzwerkverkehr aus einer zuvor aufgezeichneten Aufnahmedatei. Tshark ist die Terminalversion von Wireshark, die es Ihnen ermöglicht, Netzwerkpakete ohne grafische Benutzeroberfläche zu analysieren.

Die Option -r in tshark ermöglicht es Ihnen, Pakete aus einer zuvor gespeicherten Aufnahmedatei zu lesen. Die Datei, die wir verwenden werden (capture.pcap), enthält Beispiel-Netzwerkverkehrsdaten zur Analyse. PCAP-Dateien speichern Rohdaten von Netzwerkpaketen, die später untersucht werden können.

Folgen Sie diesen Schritten sorgfältig:

  1. Stellen Sie zunächst sicher, dass Sie sich im richtigen Verzeichnis befinden, in dem sich die Aufnahmedatei befindet. Dies ist wichtig, da tshark die Datei finden muss:
cd ~/project
  1. Überprüfen Sie, ob die Aufnahmedatei existiert, und prüfen Sie ihre Größe. Dies bestätigt, dass Sie mit der richtigen Datei arbeiten:
ls -l capture.pcap

Sie sollten eine Ausgabe ähnlich der folgenden sehen, die die Dateiberechtigungen, die Größe und die Änderungszeit anzeigt:

-rw-r--r-- 1 labex labex 123456 Jul 1 10:00 capture.pcap
  1. Öffnen Sie nun die Aufnahmedatei mit tshark. Dieser grundlegende Befehl liest die Datei und zeigt eine Zusammenfassung jedes Pakets an:
tshark -r capture.pcap

Dadurch wird die Paketzusammenfassung in Ihrem Terminal angezeigt. Jede Zeile repräsentiert ein Netzwerkpaket mit wichtigen Informationen:

1 0.000000 192.168.1.1 → 192.168.1.2 TCP 74 443 → 54321 [SYN] Seq=0 Win=64240 Len=0
2 0.000123 192.168.1.2 → 192.168.1.1 TCP 74 54321 → 443 [SYN, ACK] Seq=0 Ack=1 Win=65535 Len=0
  1. Um detailliertere Informationen über die Pakete anzuzeigen, einschließlich aller Protokollschichten (wie Ethernet-, IP- und TCP-Header), können Sie die Option -V hinzufügen, um eine ausführliche Ausgabe zu erhalten:
tshark -r capture.pcap -V

Dadurch werden die vollständigen Paketdetails angezeigt, was nützlich ist, wenn Sie bestimmte Felder in den Paketheadern untersuchen müssen.

UDP-Pakete mit -Y "udp" filtern

In diesem Schritt lernen Sie, wie Sie UDP-Pakete aus einer Netzwerkaufzeichnung mithilfe der Anzeigefilter-Syntax von Wireshark und der Option -Y in tshark filtern können. UDP (User Datagram Protocol) ist ein Kernnetzwerkprotokoll, das eine einfache Möglichkeit bietet, Datengramme zu senden, ohne Verbindungen aufzubauen. Diese Filterung ist besonders nützlich, wenn Sie sich nur auf den UDP-Verkehr in einer größeren Aufnahmedatei konzentrieren müssen, die möglicherweise mehrere Protokolle enthält.

Die Option -Y in tshark funktioniert ähnlich wie das Anzeigefilterfeld in Wireshark. Sie ermöglicht es Ihnen, Filterkriterien anzugeben, die nur Pakete anzeigen, die bestimmten Bedingungen entsprechen. Hier werden wir speziell nach Paketen filtern, die das UDP-Protokoll verwenden.

Folgen Sie diesen Schritten sorgfältig:

  1. Stellen Sie zunächst sicher, dass Sie sich immer noch im Projektverzeichnis befinden, in dem sich Ihre Aufnahmedatei befindet. Dies ist wichtig, da tshark den richtigen Pfad benötigt, um auf Ihre Aufnahmedatei zugreifen zu können:
cd ~/project
  1. Wenden Sie nun den UDP-Filter an, um nur UDP-Pakete in der Aufnahmedatei zu analysieren. Die grundlegende Befehlsstruktur ist tshark -r [Datei] -Y [Filter]:
tshark -r capture.pcap -Y "udp"

Dieser Befehl verarbeitet die Datei capture.pcap und zeigt nur UDP-Pakete an. Die Ausgabe zeigt die gefilterten Pakete in einem Format wie diesem:

5 0.002345 192.168.1.1 → 192.168.1.2 UDP 82 5353 → 5353 Len=40
8 0.004567 192.168.1.2 → 192.168.1.1 UDP 82 5353 → 5353 Len=40

Jede Zeile repräsentiert ein UDP-Paket und zeigt seine Nummer in der Aufzeichnung, den Zeitstempel, die Quell- und Ziel-IP-Adressen, die Ports und die Paketlänge an.

  1. Um detailliertere Informationen zu jedem UDP-Paket zu erhalten, können Sie die Option -V (ausführliche Ausgabe) hinzufügen. Dies zeigt die vollständige Protokollanalyse für jedes Paket an:
tshark -r capture.pcap -Y "udp" -V

Diese ausführliche Ausgabe zeigt alle Schichten des Pakets, einschließlich Ethernet-, IP- und UDP-Header mit ihren jeweiligen Feldern und Werten.

  1. Wenn Sie nur wissen müssen, wie viele UDP-Pakete in Ihrer Aufzeichnung vorhanden sind (ohne deren Inhalt zu sehen), können Sie die Ausgabe an den Wortzählbefehl weiterleiten:
tshark -r capture.pcap -Y "udp" | wc -l

Dies gibt eine einzelne Zahl aus, die die Gesamtzahl der in Ihrer Aufnahmedatei gefundenen UDP-Pakete darstellt.

Pakete mit -w udp.pcap exportieren

In diesem Schritt lernen Sie, wie Sie gefilterte UDP-Pakete in eine neue Aufnahmedatei exportieren können, indem Sie die -w-Option von Wireshark verwenden. Dies ist besonders nützlich, wenn Sie bestimmten Netzwerkverkehr isolieren möchten, um ihn genauer zu analysieren oder ihn mit Kollegen zu teilen.

Die -w-Option teilt Tshark mit, Pakete in einer Datei im pcap-Format zu speichern, was das Standardformat für Paketaufnahmedateien ist. Wenn Sie diese Option mit dem -Y-Filter kombinieren, den wir zuvor verwendet haben, können Sie selektiv nur die UDP-Pakete aus Ihrer ursprünglichen Aufnahmedatei speichern.

Lassen Sie uns den Prozess Schritt für Schritt durchgehen:

  1. Stellen Sie zunächst sicher, dass Sie sich im Projektverzeichnis befinden, in dem sich Ihre Aufnahmedatei befindet:
cd ~/project
  1. Jetzt exportieren wir alle UDP-Pakete in eine neue Datei namens udp.pcap:
tshark -r capture.pcap -Y "udp" -w udp.pcap

Dieser Befehl macht drei wichtige Dinge:

  • -r capture.pcap gibt die Eingabedatei an, aus der gelesen werden soll.
  • -Y "udp" wendet unseren Filter an, um nur UDP-Pakete auszuwählen.
  • -w udp.pcap teilt Tshark mit, wo die gefilterten Pakete gespeichert werden sollen.
  1. Nachdem Sie den Befehl ausgeführt haben, überprüfen wir, ob unsere neue Datei erstellt wurde:
ls -l udp.pcap

Sie sollten eine Ausgabe ähnlich der folgenden sehen, die anzeigt, dass die Datei existiert und ihre Größe angibt:

-rw-r--r-- 1 labex labex 12345 Jul 1 10:05 udp.pcap
  1. Um zu überprüfen, wie viele UDP-Pakete tatsächlich in unsere neue Datei exportiert wurden:
tshark -r udp.pcap | wc -l

Dieser Befehl zählt alle Pakete in der neuen Datei. Die Anzahl sollte mit der Anzahl der UDP-Pakete aus Ihrer ursprünglichen Aufzeichnung übereinstimmen.

  1. Schließlich bestätigen wir, dass nur UDP-Pakete exportiert wurden, indem wir nach nicht-UDP-Paketen suchen:
tshark -r udp.pcap -Y "not udp" | wc -l

Dies sollte 0 zurückgeben, was bedeutet, dass unser Filter korrekt funktioniert hat und nur UDP-Pakete in udp.pcap gespeichert wurden.

Überprüfung mit -r udp.pcap -V

In diesem letzten Überprüfungsschritt werden wir den Inhalt der exportierten UDP-Pakete-Datei (udp.pcap) mithilfe des detaillierten Ausgabemodus von Wireshark untersuchen. Die Option -V steht für "ausführlich" und zeigt umfassende Protokollinformationen für jedes Paket an. Dies hilft uns zu bestätigen, dass unsere vorherigen Filter- und Exportvorgänge korrekt funktioniert haben.

Beim Arbeiten mit Paketaufzeichnungen ist die Überprüfung von entscheidender Bedeutung, da sie sicherstellt, dass wir genau das extrahiert haben, was wir beabsichtigt haben. Lassen Sie uns mehrere Überprüfungsmethoden durchgehen:

  1. Navigieren Sie zunächst zum Projektverzeichnis, in dem sich Ihre Paketaufnahmedatei befindet:
cd ~/project
  1. Zeigen Sie die ersten paar UDP-Pakete mit detaillierten Protokollinformationen an. Der Befehl head -20 begrenzt die Ausgabe auf die ersten 20 Zeilen, um die Lesbarkeit zu verbessern:
tshark -r udp.pcap -V | head -20

Die Ausgabe zeigt Paketdetails wie in diesem Beispiel, in dem Sie die UDP-Protokollinformationen überprüfen können:

Frame 1: 82 bytes on wire (656 bits), 82 bytes captured (656 bits)
Ethernet II, Src: 00:11:22:33:44:55, Dst: 66:77:88:99:aa:bb
Internet Protocol Version 4, Src: 192.168.1.1, Dst: 192.168.1.2
User Datagram Protocol, Src Port: 5353, Dst Port: 5353
  1. Um zu bestätigen, dass alle Pakete in der Datei UDP-Pakete sind, werden wir die Protokollfelder untersuchen. Dieser Befehl extrahiert und zählt die eindeutigen Protokolltypen:
tshark -r udp.pcap -T fields -e frame.protocols | sort | uniq -c

In einer richtig gefilterten Aufzeichnung sollten Sie nur UDP-verwandte Protokolle aufgeführt sehen.

  1. Für eine gründliche Überprüfung überprüfen wir, ob eventuell versehentlich nicht-UDP-Pakete eingeschlossen wurden. Dieser Befehl filtert nach nicht-UDP-Verkehr und sollte keine Ergebnisse zurückgeben:
tshark -r udp.pcap -Y "not udp" -V
  1. Zählen Sie schließlich die Gesamtzahl der UDP-Pakete in Ihrer exportierten Datei, um zu überprüfen, ob die Anzahl Ihren Erwartungen entspricht:
tshark -r udp.pcap | wc -l

Dies gibt Ihnen die Gesamtzahl der Pakete in der Aufnahmedatei, die nach unserem Filterprozess alle UDP-Pakete sein sollten.

Zusammenfassung

In diesem Lab haben Sie gelernt, wie Sie das Befehlszeilentool tshark von Wireshark verwenden können, um Netzwerkpakete zu analysieren, zu filtern und zu exportieren. Die Übungen beinhalteten das Öffnen von Aufnahmedateien mit -r, das Anzeigen detaillierter Paketinformationen mit -V und das Anwenden von Anzeigefiltern mit -Y, um bestimmten Verkehr wie UDP zu isolieren.

Sie haben das Exportieren gefilterter Pakete in eine neue Datei mit -w geübt und die Ergebnisse durch erneutes Lesen der Ausgabe überprüft. Diese Techniken bieten essentielle Fähigkeiten für eine effiziente Netzwerkverkehrsanalyse und die selektive Datenextraktion in Befehlszeilenumgebungen.