Netzwerkanalyse mit Wireshark

WiresharkBeginner
Jetzt üben

Einführung

In diesem Lab erlernen Sie Techniken der Netzwerkanalyse mit Wireshark, dem Industriestandard unter den Netzwerkprotokoll-Analysatoren. Dieses leistungsstarke Werkzeug ermöglicht es Ihnen, den Netzwerkverkehr auf Paketebene zu untersuchen und liefert wertvolle Erkenntnisse für die Fehlersuche und Sicherheitsanalysen.

Sie werden praktische Fertigkeiten im Erfassen, Filtern und Interpretieren von Netzwerkpaketen erwerben. Durch praxisnahe Übungen verstehen Sie, wie verschiedene Protokolle kommunizieren und wie Sie potenzielle Netzwerkprobleme identifizieren können.

Wireshark installieren

In diesem Schritt installieren wir Wireshark auf unserem Ubuntu-System. Wireshark ist ein Analyseprogramm für Netzwerkprotokolle, mit dem Sie Netzwerkverkehr aufzeichnen und interaktiv durchsuchen können. Da es in den Standard-Repositories von Ubuntu verfügbar ist, gestaltet sich der Installationsprozess auch für Einsteiger sehr einfach.

  1. Öffnen Sie zunächst das Terminal. Suchen und öffnen Sie auf Ihrem Desktop das Xfce Terminal. Im Terminal werden wir alle Befehle zur Installation und Konfiguration von Wireshark ausführen.
Xfce Terminal Fenster öffnen

Hinweis: Nutzer der kostenlosen Version haben keinen Internetzugang. Daher ist Wireshark in der Lab-Umgebung bereits vorinstalliert. Sie können direkt zu Punkt 5 der Liste springen (überprüfen, ob Wireshark installiert ist). Upgrade auf Pro, um die eigenständige Installation von Wireshark zu üben.

Nur für Pro-Nutzer
  1. Vor der Installation neuer Software ist es ratsam, die Paketlisten zu aktualisieren. So stellen wir sicher, dass wir die aktuellste verfügbare Version von Wireshark installieren. Führen Sie folgenden Befehl aus:
sudo apt update
  1. Nun installieren wir Wireshark. Der Parameter -y beantwortet alle Rückfragen während der Installation automatisch mit "Ja", was den Prozess beschleunigt:
sudo apt install wireshark -y
  1. Während der Installation erscheint eine wichtige Sicherheitsabfrage dazu, ob auch Nicht-Administratoren (Non-Superusers) Pakete aufzeichnen dürfen. Dies ist eine entscheidende Konfiguration: Wenn Sie "Yes" wählen, benötigen Sie keine Root-Rechte, um Wireshark auszuführen, was für den täglichen Gebrauch sicherer ist. Nutzen Sie die Pfeiltasten, um "Yes" auszuwählen, und drücken Sie Enter.
Wireshark Installationsabfrage
  1. Nach Abschluss der Installation überprüfen wir, ob Wireshark korrekt installiert wurde. Die Versionsprüfung bestätigt den Erfolg und zeigt an, welche Version verwendet wird:
wireshark --version
  1. Um Netzwerkverkehr aufzeichnen zu können, müssen wir die entsprechenden Berechtigungen konfigurieren. Dazu fügen wir Ihren Benutzer der Gruppe wireshark hinzu und richten Dumpcap (das Werkzeug zur Paketaufzeichnung von Wireshark) mit den richtigen Rechten ein:

Prüfen Sie zunächst, ob die Gruppe wireshark existiert (sie sollte während der Installation erstellt worden sein):

getent group wireshark

Falls die Gruppe aus irgendeinem Grund nicht existiert, erstellen Sie diese mit:

sudo groupadd wireshark

Diese Befehle konfigurieren Dumpcap so, dass es mit erweiterten Privilegien läuft, während Wireshark selbst als normaler Benutzer ausgeführt wird – eine bewährte Sicherheitsmethode (Security Best Practice):

sudo chgrp wireshark /usr/bin/dumpcap
sudo chmod 4755 /usr/bin/dumpcap
sudo gpasswd -a $USER wireshark

Nachdem Sie diese Befehle ausgeführt haben, müssen Sie sich ab- und wieder anmelden, damit die Gruppenänderungen wirksam werden. Sie haben Wireshark nun erfolgreich installiert und konfiguriert und sind bereit, mit der Analyse des Netzwerkverkehrs zu beginnen!

Netzwerkverkehr aufzeichnen

Nachdem Wireshark installiert ist, wollen wir nun Datenverkehr aufzeichnen. Stellen Sie sich das wie das Aufstellen eines Mikrofons vor, das alle Gespräche in Ihrem Netzwerk mitschneidet. Jedes Mal, wenn Ihr Computer Daten sendet oder empfängt, werden diese in kleine Stücke, sogenannte Pakete, zerlegt. Mit Wireshark können wir diese Pakete sichtbar machen und analysieren.

  1. Starten Sie Wireshark, indem Sie wireshark im Terminal eingeben und Enter drücken. Dies öffnet die grafische Benutzeroberfläche, in der wir die Paketaufzeichnung durchführen.

  2. Wenn Wireshark startet, sehen Sie eine Liste der Netzwerkschnittstellen (die Verbindungen, über die Ihr Computer mit Netzwerken kommuniziert). Suchen Sie nach einer Schnittstelle namens "eth0" oder "eth1" – dies sind typischerweise Ihre kabelgebundenen Ethernet-Verbindungen. Wenn Sie WLAN nutzen, sehen Sie stattdessen eventuell "wlan0".

Wireshark Schnittstellenauswahl
  1. Doppelklicken Sie auf die aktive Schnittstelle (diejenige, bei der die Paketzahlen ansteigen), um die Aufzeichnung zu starten. Das Hauptfenster zeigt nun einen Live-Stream der Pakete an – jede Zeile steht für eine andere Netzwerkverbindung, die gerade stattfindet.
Wireshark Paketaufzeichnungsfenster
  1. Erzeugen wir nun etwas Netzwerkaktivität, die wir aufzeichnen können. Öffnen Sie ein neues Terminalfenster und geben Sie ein:

    curl http://example.com

    Dieser Befehl ruft die Startseite von example.com ab und generiert HTTP-Pakete (Web-Traffic), die Wireshark erfassen kann. Sie werden sehen, wie unmittelbar nach der Ausführung neue Pakete in Wireshark erscheinen.

  2. Sobald Sie einige Pakete gesehen haben (etwa 5-10 Sekunden genügen), klicken Sie auf die rote "Stop"-Schaltfläche oben. Dies friert die Aufzeichnung ein, sodass wir die Pakete untersuchen können, ohne dass ständig neue hinzukommen.

  3. Glückwunsch! Sie haben Ihren ersten Netzwerkverkehr aufgezeichnet. Jede Zeile repräsentiert ein Paket mit Details wie Quell- und Zieladresse, Protokolltyp und Zeitstempel. Die drei Hauptbereiche zeigen: die Paketliste (Zusammenfassung), die Paketdetails (technische Aufschlüsselung) und die Rohdaten des Pakets (Hexadezimal-Ansicht).

  4. Um Ihre Arbeit zu speichern, gehen Sie auf File > Save und benennen Sie die Datei myfirstcapture.pcapng im Verzeichnis /home/labex. Das .pcapng-Format speichert alle Paketdetails für spätere Analysen.

Netzwerk-Aufzeichnungsdatei speichern

Dieser grundlegende Aufzeichnungsprozess ist das Fundament der Netzwerkanalyse. In den nächsten Schritten lernen wir, wie man diese Pakete filtert und interpretiert, um das Netzwerkverhalten zu verstehen und Probleme zu beheben.

Paketdaten analysieren

Nachdem wir Netzwerkverkehr aufgezeichnet haben, untersuchen wir diesen nun Schritt für Schritt. Betrachten Sie dies wie das Mitlesen einer digitalen Unterhaltung – wir lernen, die "Sprache" zu interpretieren, die Computer zur Kommunikation nutzen.

  1. Öffnen der Aufzeichnungsdatei:
    Starten Sie Wireshark und öffnen Sie Ihre gespeicherte Datei (myfirstcapture.pcapng) entweder über File > Open oder per Doppelklick auf die Datei. Diese Datei enthält den gesamten zuvor aufgezeichneten Datenverkehr, vergleichbar mit der Aufnahme eines Telefongesprächs.

  2. Die Paketliste verstehen:
    Der obere Bereich zeigt alle erfassten Pakete in chronologischer Reihenfolge. Jede Zeile steht für eine Netzwerknachricht und zeigt:

    • Wer hat sie gesendet (Source IP)
    • Wer hat sie empfangen (Destination IP)
    • Um welche Art der Kommunikation handelte es sich (Protocol)
    • Eine kurze Zusammenfassung (Info)
  3. Paketdetails untersuchen:
    Wenn Sie auf ein Paket klicken, offenbart der mittlere Bereich dessen interne Struktur anhand der Protokollschichten:

    • Frame: Physikalische Netzwerkdetails
    • Ethernet: Hardware-Adressierung (MAC-Adressen)
    • IP: Informationen zum Internet-Routing
    • TCP/UDP: Transportdetails
    • Anwendungsdaten (wie HTTP)
  4. HTTP-Verkehr filtern:
    Geben Sie in der Filterleiste (oben) http ein und drücken Sie Enter. Dies isoliert den Web-Traffic, so als würden Sie in einem Telefonprotokoll nur nach Textnachrichten suchen. HTTP ist das Protokoll, das Webbrowser zur Kommunikation mit Servern verwenden.

Wireshark HTTP Paketfilter
  1. Web-Anfragen identifizieren:
    Suchen Sie nach Paketen mit "GET" in der Spalte "Info". Diese stehen für die Anfrage Ihres Browsers nach einer Webseite. Klicken Sie auf eines, um Folgendes zu sehen:
    • Die exakt angeforderte URL
    • Welche Website kontaktiert wurde
    • Technische Details zur Anfrage
HTTP GET Paketdetails
  1. HTTP-Header analysieren:
    Erweitern Sie den Abschnitt "Hypertext Transfer Protocol", um Details zu sehen:

    • Anfragemethode (GET/POST)
    • Angeforderte Ressource (/index.html)
    • Browser-Informationen
    • Cookies und andere Metadaten
  2. Server-Antworten finden:
    Suchen Sie nach Paketen mit "HTTP/1.1 200 OK". Diese zeigen erfolgreiche Webseiten-Übertragungen an. Achten Sie auf:

    • Antwortcodes (200=Erfolg, 404=Nicht gefunden)
    • Servertyp (Apache/Nginx)
    • Inhaltstyp (HTML, Bilder, etc.)
Erfolgreiche HTTP-Serverantwort
  1. Web-Inhalte anzeigen:
    Prüfen Sie bei erfolgreichen Antworten den Abschnitt "Line-based text data", um den eigentlichen Inhalt der Webseite zu sehen. Hier wird der HTML-Code angezeigt, den der Server an Ihren Browser gesendet hat.

Diese Analyse macht die verborgenen Gespräche in Netzwerken sichtbar. Wenn Sie diese Muster verstehen, können Sie Fehler beheben, verdächtige Aktivitäten erkennen und nachvollziehen, wie Anwendungen kommunizieren.

Filter verwenden

Die wahre Stärke von Wireshark liegt in der Fähigkeit, große Mengen an Netzwerkdaten schnell zu filtern und zu analysieren. In diesem Schritt lernen wir, wie wir Filter einsetzen, um uns auf bestimmte Arten von Datenverkehr zu konzentrieren. Betrachten Sie Filter als Suchbegriffe, die Ihnen helfen, in einem Meer von Netzwerkpaketen genau das zu finden, was Sie suchen.

  1. Nutzen wir bei geöffneter Aufzeichnungsdatei zunächst einige einfache Anzeigefilter (Display Filter). Die Filterleiste befindet sich direkt unter der Hauptwerkzeugleiste:

    • Um nur TCP-Verkehr anzuzeigen (das am häufigsten verwendete Transportprotokoll), geben Sie tcp in die Filterleiste ein und drücken Sie Enter. Alle Nicht-TCP-Pakete werden ausgeblendet.
    • Um Verkehr von oder zu einer bestimmten IP-Adresse anzuzeigen, geben Sie ip.addr == 93.184.215.14 ein (dies ist die IP von example.com, Sie können sie aber durch jede IP ersetzen, die Sie in Ihrer Aufzeichnung sehen). Das doppelte Gleichheitszeichen (==) bedeutet "entspricht exakt".
    Wireshark TCP Filter Beispiel
    • Um alle HTTP-GET-Anfragen (die häufigste Art von Web-Anfragen) anzuzeigen, geben Sie http.request.method == "GET" ein. So sehen Sie direkt, welche Webseiten angefordert wurden.
  2. Erstellen wir nun einen komplexeren Filter durch die Kombination von Bedingungen. Wir suchen nach allen HTTP-GET-Anfragen, die speziell an example.com gerichtet sind:

    • Geben Sie in der Filterleiste ein: http.request.method == "GET" && http.host contains "example.com"
    • Das && steht für "UND", beide Bedingungen müssen also erfüllt sein.
    • Der Operator contains erlaubt es uns, jede Domain zu finden, die "example.com" im Namen trägt.
    Wireshark HTTP GET Filter
    • Dieser Filter zeigt alle GET-Anfragen an Domains, die "example.com" enthalten, was sehr nützlich ist, um den Verkehr zu bestimmten Websites zu überwachen.
  3. Da Sie bestimmte Filter wahrscheinlich immer wieder benötigen, bietet Wireshark die Möglichkeit, diese zu speichern. Speichern wir unseren HTTP-GET-Filter:

    • Klicken Sie auf das Pluszeichen ("+") neben der Filterleiste. Dies öffnet das Fenster zur Filterverwaltung.
    • Benennen Sie den Filter "HTTP GETs" und klicken Sie auf Save. Wählen Sie einen aussagekräftigen Namen, an den Sie sich erinnern können.
    • Sie können diesen Filter nun jederzeit schnell anwenden, indem Sie ihn aus der Liste der gespeicherten Filter auswählen (das Lesezeichen-Symbol neben der Filterleiste).
  4. Exportieren wir zum Abschluss einige unserer Ergebnisse für die Dokumentation oder weitere Analysen:

    • Gehen Sie zu Statistics > HTTP > Requests, um eine Zusammenfassung aller HTTP-Anfragen zu sehen.
    • Klicken Sie auf "Save as", um die Liste in eine Datei zu exportieren.
    • Wählen Sie /home/labex als Speicherort und benennen Sie die Datei http_requests.txt.
    Export der HTTP-Anfragenliste

Die Verwendung von Filtern ermöglicht es Ihnen, riesige Datenmengen effizient zu durchsieben und sich auf das Wesentliche zu konzentrieren. Es ist wie eine Lupe mit Superkräften, die Ihnen sofort spezifische Teile des Netzwerkverkehrs zeigt. Das Beherrschen von Filtern wird Ihnen bei der Fehlersuche oder der Analyse von Sicherheitsvorfällen Stunden an Arbeit ersparen.

Zusammenfassung

In diesem Lab haben Sie die Grundlagen der Netzwerkanalyse mit Wireshark erlernt. Sie haben essenzielle Fähigkeiten erworben, darunter die Installation von Wireshark, das Aufzeichnen von Netzwerkverkehr, das Analysieren von Paketdaten und das Anwenden von Filtern zur Isolierung spezifischer Verkehrsarten.

Diese Kernkompetenzen bilden ein solides Fundament für die Cybersicherheit und Netzwerkadministration. Wireshark dient als mächtiges Werkzeug zur Fehlerbehebung in Netzwerken, zur Überwachung von Verkehrsmustern und zur Identifizierung potenzieller Sicherheitsbedrohungen. Üben Sie weiter, um Ihre Expertise in der Netzwerkanalyse stetig auszubauen.