Wireshark-Aufnahmefilter für die Netzwerkverkehrsanalyse anwenden

CybersecurityCybersecurityBeginner
Jetzt üben

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

Einführung

In diesem Lab erfahren Sie, wie Sie Wireshark - Capture - Filter nutzen können, um Netzwerkverkehr gezielt nach bestimmten Kriterien aufzuzeichnen. Capture - Filter sind leistungsstarke Werkzeuge, die es Ihnen ermöglichen, sich auf relevante Daten zu konzentrieren und irrelevanten Verkehr auszuschließen, wodurch Ihre Analyse effizienter wird.

Sie werden verschiedene Capture - Filter - Ausdrücke untersuchen und sie auf reale Szenarien anwenden. Diese praktische Erfahrung wird Ihre Fähigkeiten in der Netzwerkfehlersuche und Sicherheitsanalyse verbessern.

Das Verständnis der Syntax von Capture - Filtern

In der Welt der Netzwerkanalyse kann es überwältigend sein, mit einer großen Datenmenge umzugehen. Hier kommen die Capture - Filter in Wireshark ins Spiel. Capture - Filter ermöglichen es Ihnen, nur bestimmte Pakete zu erfassen, die Ihren Kriterien entsprechen. Dies reduziert erheblich die Datenmenge, die Sie analysieren müssen. Es ist wichtig zu beachten, dass Capture - Filter sich von Anzeigefiltern (Display - Filtern) unterscheiden. Anzeigefilter werden verwendet, um bereits erfasste Pakete zu filtern, während Capture - Filter während des Paketerfassungsvorgangs wirken.

Was sind Capture - Filter?

Capture - Filter verwenden die Berkeley Packet Filter (BPF) - Syntax. BPF ist eine spezialisierte Sprache, die entwickelt wurde, um Netzwerkpakete zu filtern, bevor sie von Anwendungen wie Wireshark verarbeitet werden. Durch die Anwendung dieser Filter können Sie mehrere wichtige Ziele erreichen:

  • Reduzierung der erfassten Datenmenge: Anstatt den gesamten Netzwerkverkehr zu erfassen, können Sie sich auf die relevanten Teile konzentrieren, was Speicherplatz und Rechenleistung spart.
  • Fokussierung auf bestimmte Verkehrstypen: Sie können bestimmte Arten von Netzwerkaktivitäten anvisieren, wie z. B. HTTP - Anfragen oder SSH - Verbindungen.
  • Verbesserung der Leistung während der Paketerfassung: Mit weniger Daten, die verarbeitet werden müssen, wird der Paketerfassungsvorgang schneller und effizienter.
  • Vereinfachung der anschließenden Analyse: Wenn Sie über einen kleineren und relevanteren Datensatz verfügen, ist es viel einfacher, zu analysieren und Schlussfolgerungen zu ziehen.

Grundlegende Syntax von Capture - Filtern

Capture - Filter in Wireshark verwenden eine spezifische Syntax, die auf der libpcap - Filtersprache basiert. Schauen wir uns einige häufige Elemente an:

  • host: Dieses Element filtert den Verkehr anhand der IP - Adresse oder des Hostnamens. Beispielsweise wird Wireshark mit dem Filter host 192.168.0.2 den gesamten Verkehr zu oder von der angegebenen IP - Adresse erfassen.
  • net: Es filtert den Verkehr anhand einer Netzwerkadresse und einer Subnetzmaske. Beispielsweise wird der Filter net 10.0.0.0/24 den Verkehr aus dem Netzwerk 10.0.0.0/24 erfassen.
  • port: Dieser filtert den Verkehr anhand der Portnummer. Beispielsweise wird port 80 verwendet, um HTTP - Verkehr zu erfassen, da HTTP normalerweise Port 80 nutzt.
  • protocol: Es filtert den Verkehr anhand des Protokolls. Beispielsweise wird tcp den gesamten TCP - Verkehr erfassen, und udp wird den gesamten UDP - Verkehr erfassen.

Sie können diese Elemente mit logischen Operatoren kombinieren:

  • and oder &&: Wenn Sie diesen Operator verwenden, müssen beide Bedingungen erfüllt sein, damit ein Paket erfasst wird.
  • or oder ||: Mit diesem Operator kann eine der Bedingungen erfüllt sein, damit ein Paket erfasst wird.
  • not oder !: Dieser Operator negiert eine Bedingung. Wenn Sie also not tcp verwenden, wird Wireshark den gesamten Nicht - TCP - Verkehr erfassen.

Üben wir mit einem einfachen Filter

Jetzt setzen wir das, was wir gelernt haben, um. Befolgen Sie diese Schritte, um Wireshark zu öffnen und einen grundlegenden Capture - Filter anzuwenden:

  1. Zunächst müssen Sie ein Terminal öffnen. Sie können dies tun, indem Sie auf das Terminal - Symbol in der Taskleiste des Desktops klicken oder Strg+Alt+T drücken.

  2. Sobald das Terminal geöffnet ist, geben Sie den folgenden Befehl ein, um Wireshark zu starten:

    wireshark
  3. Wenn Wireshark geöffnet ist, sehen Sie den Hauptstartbildschirm. Auf diesem Bildschirm werden alle verfügbaren Netzwerkschnittstellen auf Ihrem System angezeigt.

  4. Suchen Sie das Eingabefeld "Capture Filter:" oben im Wireshark - Fenster. Hier geben Sie Ihren Capture - Filter ein.

    Wireshark capture filter syntax
  5. Geben Sie tcp in das Filterfeld ein. Dadurch sagen Sie Wireshark, dass es nur TCP - Pakete erfassen soll.

  6. Wählen Sie aus der Liste der Schnittstellen diejenige aus, die mit any bezeichnet ist. Die Auswahl von any bedeutet, dass Wireshark Pakete auf allen Netzwerkschnittstellen erfassen wird.

  7. Klicken Sie auf die blaue Hai - Flosse Start - Schaltfläche. Dadurch wird der Paketerfassungsvorgang mit dem von Ihnen angewendeten Filter gestartet.

    Capture filter
  8. Lassen Sie Wireshark etwa 10 - 15 Sekunden laufen. In dieser Zeit wird es einige TCP - Pakete erfassen. Sie sollten beginnen, Pakete im Hauptfenster erscheinen zu sehen.

  9. Um die Erfassung zu stoppen, klicken Sie auf die rote Quadrat Stop - Schaltfläche in der Symbolleiste.

  10. Jetzt möchten Sie die erfassten Pakete für eine spätere Analyse speichern. Klicken Sie in der Menüleiste auf File > Save As.

  11. Navigieren Sie im Dateispeicherdialog zum Verzeichnis /home/labex/project.

  12. Geben Sie step1.pcapng als Dateinamen ein und klicken Sie auf Save.

    Save captured packets

Sie haben nun erfolgreich einen grundlegenden Capture - Filter angewendet, um nur TCP - Pakete zu sammeln, und die Ergebnisse für eine spätere Analyse gespeichert.

Anwenden von Capture - Filtern für spezifischen Verkehr

In diesem Schritt werden wir uns darauf konzentrieren, spezifischen Netzwerkverkehr zu erfassen. Insbesondere werden Sie lernen, wie Sie einen spezifischeren Capture - Filter anwenden, um HTTP - Verkehr auf Port 80 zu erfassen. HTTP - Verkehr auf Port 80 ist im Internet sehr verbreitet, da er für unverschlüsselte Webkommunikation verwendet wird. Nachdem Sie den Filter eingerichtet haben, werden Sie ein Skript verwenden, um Testverkehr zu generieren. Dies wird Ihnen helfen, zu sehen, wie der Filter in einer realen Situation funktioniert.

Erstellen einer neuen Erfassung mit einem spezifischen Filter

Zunächst richten wir eine neue Erfassung mit einem Filter für Port 80 ein. Bevor wir eine neue Erfassung starten, müssen wir sicherstellen, dass keine vorherigen Erfassungen geöffnet sind.

  1. Wenn Sie die vorherige Erfassung noch geöffnet haben, schließen Sie sie, indem Sie auf File > Close klicken oder auf die Schaltfläche Close this capture file (X) in der oberen rechten Ecke der Paketliste. Dieser Schritt ist wichtig, da das Öffnen mehrerer Erfassungen zu Verwirrung führen kann und die Genauigkeit Ihrer neuen Erfassung beeinträchtigen könnte.

    Close this capture file
  2. Sobald Sie die vorherige Erfassung geschlossen haben, sollten Sie nun den Wireshark - Willkommensbildschirm sehen, auf dem die verfügbaren Schnittstellen angezeigt werden. Auf diesem Bildschirm beginnen Sie, Ihre neue Erfassung zu konfigurieren.

  3. Wir verwenden dieses Mal eine detailliertere Methode, um den Capture - Filter festzulegen. Klicken Sie auf die Schaltfläche Capture Options (oder gehen Sie im Menü zu Capture > Options). Der Dialog Capture Options gibt Ihnen mehr Kontrolle darüber, wie Wireshark Pakete erfasst, einschließlich der Einstellung des Capture - Filters.

    Capture filter
  4. Im Dialog Capture Options sehen Sie eine Liste der Schnittstellen und ein Eingabefeld Capture Filter unten. Die Schnittstellen repräsentieren die auf Ihrem System verfügbaren Netzwerkverbindungen, und im Feld Capture Filter geben Sie die Bedingungen für die Pakete an, die Sie erfassen möchten.

    Capture filter
  5. Klicken Sie auf das Feld Capture Filter und geben Sie den Filter port 80 ein. Dieser Filter wird den gesamten Verkehr (sowohl TCP als auch UDP) erfassen, der Port 80 verwendet. Port 80 wird üblicherweise für HTTP - Kommunikation verwendet. Indem wir diesen Filter verwenden, sagen wir Wireshark, nur Pakete zu erfassen, die mit HTTP - Verkehr auf diesem Port verbunden sind.

  6. Alternativ können Sie auf die Schaltfläche Capture Filter: klicken, um aus gespeicherten Filter - Lesezeichen auszuwählen. Dies kann nützlich sein, wenn Sie eine Reihe von Filtern häufig verwenden.

    Capture filter
  7. Im Filterauswahldialog können Sie aus vordefinierten Filtern auswählen oder einen neuen erstellen. Geben Sie für jetzt einfach port 80 direkt in das Filterfeld ein. Dies stellt sicher, dass wir den spezifischen Verkehr erfassen, an dem wir interessiert sind.

    Capture filter
  8. Stellen Sie sicher, dass die Schnittstelle any ausgewählt ist, und klicken Sie auf die Schaltfläche Start, um die Erfassung von Paketen zu beginnen, die dem Filter entsprechen. Die Auswahl von any bedeutet, dass Wireshark Pakete von allen verfügbaren Netzwerkschnittstellen erfassen wird.

Generieren von Testverkehr

Jetzt, da Wireshark Verkehr auf Port 80 erfasst, generieren wir einige Testverkehr, um zu sehen, wie der Filter funktioniert. Dies wird Ihnen helfen, zu bestätigen, dass der Filter wie erwartet funktioniert.

  1. Öffnen Sie ein neues Terminalfenster, indem Sie auf das Terminal - Symbol in der Taskleiste klicken oder Strg+Alt+T drücken. Im Terminal führen Sie Befehle aus, um den Testverkehr zu generieren.

  2. Navigieren Sie im neuen Terminal zum Projektverzeichnis:

    cd /home/labex/project

    Dieser Befehl wechselt das aktuelle Arbeitsverzeichnis in das Projektverzeichnis, in dem sich das Skript zum Generieren von Verkehr befindet.

  3. Führen Sie das vorkonfigurierte Skript aus, um simulierten HTTP - Verkehr zu generieren:

    ./simulate_traffic.sh

    Dieses Skript ist so konzipiert, dass es einen einfachen Server auf Port 80 startet und einige Daten an ihn sendet, wodurch realer HTTP - Verkehr simuliert wird.

  4. Sie sollten eine Ausgabe ähnlich dieser sehen:

    Netcat server listening on port 80...
    Sending data to port 80...
    Please check the Wireshark output for the data sent to port 80.

    Diese Ausgabe zeigt an, dass das Skript korrekt funktioniert und dass Daten an Port 80 gesendet werden.

  5. Dieses Skript erstellt einen einfachen Server, der auf Port 80 lauscht, und sendet ihm eine kurze Nachricht "Hello, Wireshark!". Diese Nachricht wird von Wireshark erfasst, wenn der Filter korrekt funktioniert.

Analysieren des erfassten Verkehrs

  1. Kehren Sie zum Wireshark - Fenster zurück. Sie sollten die Pakete sehen, die vom Skript generiert wurden. Diese Pakete sind das Ergebnis des Testverkehrs, den wir gerade generiert haben.

  2. Diese Pakete sollten Kommunikation auf Port 80 zeigen, was mit unserem Capture - Filter übereinstimmt. Dies bestätigt, dass der Filter wie erwartet funktioniert.

    Capture port 80
  3. In der Paketliste sollten Sie mindestens 3 Pakete sehen:

    • TCP SYN - Paket zur Herstellung der Verbindung: Dies ist der erste Schritt im TCP - Dreiwege - Handshake, bei dem der Client eine Verbindung mit dem Server herstellen möchte.
    • TCP SYN - ACK - Paket zur Bestätigung der Verbindung: Der Server antwortet auf die SYN - Anfrage des Clients und gibt an, dass er bereit ist, eine Verbindung herzustellen.
    • TCP - Paket, das die Daten "Hello, Wireshark!" enthält: Dies ist das eigentliche Datenpaket, das die vom Skript gesendete Nachricht enthält.
  4. Klicken Sie auf eines der Pakete, um seine Details im mittleren Bereich anzuzeigen. Sie können Abschnitte erweitern, indem Sie auf die Pfeilsymbole klicken. Dadurch können Sie die verschiedenen Teile des Pakets, wie die Header und die Daten, anzeigen.

  5. Stoppen Sie jetzt die Erfassung, indem Sie auf die rote Quadrat - Schaltfläche Stop in der Symbolleiste klicken. Das Stoppen der Erfassung ist wichtig, damit Sie die erfassten Pakete analysieren können, ohne dass neue Pakete hinzugefügt werden.

  6. Speichern Sie die erfassten Pakete, indem Sie in der Menüleiste auf File > Save As klicken. Das Speichern der Pakete ermöglicht es Ihnen, später auf sie zurückzugreifen, um eine weitere Analyse durchzuführen.

  7. Navigieren Sie im Dateispeicherdialog zum Verzeichnis /home/labex/project. Dies ist das Verzeichnis, in dem wir die erfassten Pakete speichern möchten.

  8. Geben Sie step2.pcapng als Dateinamen ein und klicken Sie auf Save. Das Dateiformat .pcapng ist ein gängiges Format zum Speichern von Netzwerkpaketerfassungen.

Sie haben erfolgreich einen spezifischen Capture - Filter angewendet, um nur Verkehr auf Port 80 zu sammeln, und realen Verkehr beobachtet, der diesem Filter entspricht.

Analysieren des erfassten Verkehrs mit Anzeigefiltern (Display - Filtern)

In diesem Schritt werden Sie lernen, wie Sie Anzeigefilter (Display - Filter) verwenden, um den bereits erfassten Verkehr zu analysieren. Bevor wir beginnen, ist es wichtig, den Unterschied zwischen Capture - Filtern und Anzeigefiltern zu verstehen. Capture - Filter werden verwendet, um zu entscheiden, welcher Verkehr überhaupt erfasst wird. Anzeigefilter hingegen ermöglichen es Ihnen, sich auf bestimmte Teile der bereits erfassten Pakete zu konzentrieren. Sie sind wie eine Lupe für Ihre erfassten Daten und helfen Ihnen, sich auf die Details zu konzentrieren, an denen Sie interessiert sind.

Das Verständnis des Unterschieds zwischen Capture - Filtern und Anzeigefiltern

Schauen wir uns den Unterschied zwischen Capture - Filtern und Anzeigefiltern genauer an.

  • Capture - Filter werden angewendet, bevor Pakete aufgezeichnet werden. Sie verwenden die Berkeley Packet Filter (BPF) - Syntax. Stellen Sie sich Capture - Filter als einen Wächter am Eingang vor. Sie entscheiden, welche Pakete in die Erfassung aufgenommen werden dürfen.
  • Anzeigefilter werden auf bereits erfasste Pakete angewendet. Sie verwenden die eigene Syntax von Wireshark. Anzeigefilter sind wie ein Scheinwerfer, der bestimmte Pakete unter den bereits erfassten hervorhebt.
  • Anzeigefilter sind leistungsfähiger und flexibler als Capture - Filter. Sie ermöglichen es Ihnen, komplexere Suchen und Analysen an den erfassten Daten durchzuführen.
  • Anzeigefilter reduzieren nicht die Menge der erfassten Daten. Sie steuern nur, was in der Benutzeroberfläche angezeigt wird. Das ursprünglich erfasste Datenmaterial bleibt also intakt, und Sie können den Anzeigefilter so oft ändern, wie Sie möchten, um verschiedene Aspekte der Daten anzuzeigen.

Öffnen der erfassten Datei

Jetzt öffnen wir die Datei, die die zuvor erfassten Pakete enthält.

  1. Wenn Sie Wireshark noch von dem vorherigen Schritt geöffnet haben, können Sie direkt fortfahren. Andernfalls öffnen Sie Wireshark und dann die Datei, die Sie in Schritt 2 gespeichert haben.
  2. Um eine zuvor gespeicherte Datei in Wireshark zu öffnen:
    • Klicken Sie in der Menüleiste auf File > Open. Dies ist eine gängige Methode, um auf Dateien in vielen Softwareanwendungen zuzugreifen.
    • Navigieren Sie zum Verzeichnis /home/labex/project. Dort ist die erfasste Datei gespeichert.
    • Wählen Sie die Datei step2.pcapng aus und klicken Sie auf Open. Das Dateiformat .pcapng wird üblicherweise verwendet, um Netzwerkpaketdaten zu speichern.
  3. Nachdem Sie die Datei geöffnet haben, sollten Sie nun die in Schritt 2 erfassten Pakete in Wireshark sehen. Dies sind die Daten, die wir mit Anzeigefiltern analysieren werden.

Anwenden von Anzeigefiltern

Als Nächstes wenden wir Anzeigefilter auf die erfassten Pakete an.

  1. Suchen Sie die Anzeigefilter - Symbolleiste oben im Wireshark - Fenster. Dies unterscheidet sich von dem Capture - Filter, den Sie zuvor verwendet haben. Sie hat einen hellgrünen Hintergrund, wenn sie aktiv ist. In der Anzeigefilter - Symbolleiste geben Sie die Filterausdrücke ein, um bestimmte Pakete anzuzeigen.
  2. Geben Sie im Anzeigefilterfeld tcp ein und drücken Sie Enter oder klicken Sie auf die rechte Pfeiltaste. Indem Sie tcp eingeben, sagen Sie Wireshark, nur die Pakete anzuzeigen, die das TCP - Protokoll verwenden. Dadurch werden nur TCP - Pakete in der Anzeige angezeigt, und alle anderen Protokollpakete werden ausgefiltert, falls vorhanden.
  3. Beachten Sie, wie die Pakete in der Anzeige sofort gefiltert werden, ohne dass eine neue Erfassung erforderlich ist. Dies ist einer der Vorteile der Verwendung von Anzeigefiltern. Sie können schnell verschiedene Aspekte der erfassten Daten analysieren, ohne den Verkehr erneut erfassen zu müssen.
  4. Jetzt probieren wir einen spezifischeren Anzeigefilter. Löschen Sie den aktuellen Filter, indem Sie auf die Schaltfläche X rechts in der Filterleiste klicken. Dadurch wird der vorherige Filter entfernt, und alle erfassten Pakete werden erneut angezeigt.
  5. Geben Sie den folgenden Filter ein, um Pakete anzuzeigen, die das Wort "Wireshark" enthalten:
    frame contains "Wireshark"
    Dieser Filter sucht nach dem Wort "Wireshark" in den Frame - Daten der Pakete.
  6. Drücken Sie Enter oder klicken Sie auf den rechten Pfeil, um den Filter anzuwenden.
    Display filter
  7. Sie sollten jetzt nur die Pakete sehen, die den Text "Wireshark" enthalten - wahrscheinlich nur ein oder zwei Pakete, die unsere Nachricht "Hello, Wireshark!" enthalten. Dies zeigt, wie Anzeigefilter verwendet werden können, um spezifische Informationen in den erfassten Paketen zu finden.
  8. Wenn Sie in der Paketliste auf eines dieser Pakete klicken, können Sie seine Details im mittleren Bereich sehen. Suchen Sie nach dem Abschnitt "Data", der den Text "Hello, Wireshark!" anzeigen sollte. Dies ermöglicht es Ihnen, den Inhalt der Pakete detaillierter zu untersuchen.

Erstellen eines Berichts

Nachdem Sie den Verkehr mit Anzeigefiltern analysiert haben, erstellen wir jetzt einen einfachen Bericht, der Ihre Ergebnisse dokumentiert.

  1. Zählen Sie die Anzahl der Pakete, die dem Filter frame contains "Wireshark" entsprechen. Die Anzahl sollte in der Statusleiste am unteren Rand des Wireshark - Fensters angezeigt werden und etwas wie "Displayed: X of Y packets" anzeigen. Diese Anzahl repräsentiert die Anzahl der Pakete, die das Wort "Wireshark" enthalten.
  2. Öffnen Sie ein Terminalfenster, indem Sie auf das Terminal - Symbol in der Taskleiste klicken oder Strg+Alt+T drücken. Das Terminal ist ein leistungsfähiges Werkzeug, das es Ihnen ermöglicht, Befehle auf Ihrem Computer auszuführen.
  3. Erstellen Sie im Terminal eine Berichtsdatei mit der Paketanzahlinformation:
    echo "Number of packets matching the filter expression: 1" > /home/labex/project/report.txt
    Hinweis: Ersetzen Sie in obigem Befehl die 1 durch die tatsächliche Anzahl der Pakete, die dem Filter entsprechen. Diese Anzahl kann je nach Ausführung des Skripts variieren.
    Save report
  4. Sie können den Inhalt Ihres Berichts überprüfen, indem Sie ihn anzeigen:
    cat /home/labex/project/report.txt
    Sie sollten die Zeile mit der Paketanzahlinformation sehen. Dieser Schritt stellt sicher, dass die Berichtsdatei korrekt erstellt wurde und die erwarteten Informationen enthält.

Sie haben nun erfolgreich Anzeigefilter angewendet, um erfassten Netzwerkverkehr zu analysieren, und Ihre Ergebnisse in einer Berichtsdatei dokumentiert.

Zusammenfassung

In diesem Lab haben Sie gelernt, wie Sie Wireshark - Capture - Filter verwenden, um Netzwerkverkehr nach bestimmten Kriterien selektiv zu erfassen und zu analysieren. Sie haben wichtige Fähigkeiten geübt, wie das Verständnis der Grundsyntax von Capture - Filtern auf der Grundlage der Berkeley Packet Filter - Sprache, deren Anwendung während der Live - Erfassung und die Unterscheidung zwischen Capture - Filtern und Anzeigefiltern (Display - Filtern).

Diese Fähigkeiten sind für Netzwerkadministratoren, Sicherheitsanalysten und IT - Fachkräfte, die mit Netzwerkproblemen oder Sicherheitsvorfällen umgehen, von entscheidender Bedeutung. Das Beherrschen von Capture - Filtern ermöglicht eine effizientere Netzwerkanalyse, indem Sie sich auf relevanten Verkehr konzentrieren. Wenn Sie in der Netzwerkanalyse voranschreiten, können Sie auf diesen Fähigkeiten aufbauen, um komplexe Filter für eine anspruchsvolle Verkehrsauswahl in komplexen Umgebungen zu erstellen.