Diese Webseite nutzt nur technisch notwendige Cookies.

Man-in-the-middle einfach erklärt – Tutorial

Sniffing Wireshark Hacking Steffen Lippke Hacking Series

Was ist eine Man-In-the-Middle Attack?

Dieses Tutorial erklärt Dir, wie der Angriff funktioniert und wie Du Dich davor schützen kannst.

Starten wir!

Was ist Man-In-the-Middle?

Die Software Wireshark ist ein Netzwerkanalyse-Tool, welche den Netzwerkverkehr mitschneiden kann. Die Datenpakete bereitet das Tool visuell auf, damit Admins Netzwerkprobleme entdecken können.

Wiresharks schneide Traffic mit
Wiresharks schneide Traffic mit

Software Typ – Sniffer

Die Software Wireshark gehört zu den Sniffern. Sniff (deutsch: schnüffeln) bedeutet, dass das Tool den gesamten Internet-Traffic im Netzwerk überwacht und mitschneidet kann.

Das Tool kann im Promiscuous-Mode den gesamten Internet-Traffic im LAN mitschneiden, welches für andere Geräte bestimmt ist z. B. Dein Smartphone.

Der Router sendet in der Regel die empfangenen IP-Pakete an alle Geräte. Jedes Gerät hat eine MAC-Adresse. Stimmt die eigene MAC-Adresse mit den eingehenden IP-Paketen überein, dann verarbeitet die Netzwerk-Karte des Geräts das Paket.

Wann ist Sniffing erlaubt?

Ethical Hacker und Netzwerk-Admins nutzen ein solches Tool mit der Genehmigung des Unternehmens. Privat darfst Du ein solches Tool auch einsetzen, wenn Du Dein eigenes Netzwerk verwendest.

Wireshark ist ein Dual Use Tool. Du kannst damit Bugs finden, aber auch nutzen, um Leute abzuhören.

Spoofing erklärt

Das Spoofing (deutsch: Manipulation) ist in diesem Kontext das absichtliche Verändern oder Fehlleiten von IP-Paketen.

Der Angreifer versucht unbemerkt IP-Pakete auszutauschen (Intercepting), sodass das Opfer meint, dass der Inhalt z. B. eine Webseite von einer zertifizierten Quelle stammt.

Diese Arten von Spoofing gibt es:

  • IP-Spoofing
    Ein Hacker übermittelt Dir HTML, CSS und JavaScript einer präparierten, gehackten Webseite und fälscht hierzu die IP, sodass diese „echt“ aussieht.
  • DNS-Spoofing
    Ein Hacker versucht die Anfrage von z. B. Deine Bank Webseite auf seinem Server umzuleiten, sodass das Opfer auf einer gefälschten Webseite die Passwörter eingibt. Die DNS wandelt eine URL „postbank.de“ zu einer IP „160.83.8.182“ um.
  • E-Mail-Spoofing
    Das Protokoll SMTP ist nicht sicher und benötigt keine Authentifizierung. Deshalb kann der Hacker einfach den Kopf der Mail austauschen und sich als eine Autoritäts-Person ausgeben. Diese Art von Spoofing nutzen Spam-Mailer und Hacker, die Passwörter abgreifen wollen.
  • ARP Spoofing
    Das Address Resolution Protokoll (ARP) dient dazu, ein Netzwerkgerät in einem LAN-Netz zu erkennen: Via MAC-Adresse melden sich die Geräte beim Rooter an und dieser leitet die Daten weiter. Wenn der Hacker Ihre MAC-Adresse manipulieren und sich als ein anderes Gerät ausgeben, kann der Rooter nach einem ARP-Poisoning die Pakete fehlleiten.

Man-In-The-Middle Folgen

Stell Dir vor, Du gehst in ein Café und bestellst Dir ein Latte-Macchiato.

Aus Langeweile (und gut eingeübter Routine) ziehst Du Dein Smartphone aus der Tasche und fängst an zu tippen. Da heute der 30. des Monates ist und Du an Daten sparen willst, suchst Du nach einem öffentlichen W-LAN.

Du logst Dich in das nächst beste W-LAN mit gutem Signal ein und akzeptierst die AGBs.

Schon mal die AGBs gelesen? Ist Herausgeber vertrauenswürdig? Ist CafeWlan auf wirklich vom Café?

Steffen Lippke

Im Café kann ein Hacker sitzen und ein W-LAN Hotspot mit den Namen „Café am Bahnhof“ eingerichtet haben. Mit einem Sniffer wie Wireshark überwacht der Böse Deine Internet-Aktivitäten.

Falls Du ungeschütztes HTTP nutzt, kann der Hacker alles sehen, was Du machst, und kann mitlesen. Falls Du eine Webseite mit TSL (alt: SSL) verschlüsselte Webseiten nutzt, kann der Hacker nicht mehr sehen, was die Inhalte sind. Stattdessen sieht der Hacker nur die URLs.

Dieses Szenario nennt sich Man-In-The-Middle Attack.

Wireshark Tutorail

Wie wir jetzt schon gelernt haben, schneidet Wireshark alles mit, was über das LAN-Kabel oder W-LAN Modul läuft. Die riesigen Datenmengen, die Synchronisation von Clouds, E-Mail-Programme oder Browser anfallen, stellt das Tool Paket für Paket dar. Ein Paket enthält je nach Größe eine sehr kleine Menge an Daten.

Ein Frame im Focus
Ein Frame im Focus

Verkehr überwachen

Wenn Du google.de in die URL-Leiste im Browser eingibst und dann Enter drückst, downloadet der Browser hunderte von Frames (Internet-Pakete). In Wireshark kann der Nutzer die Übersicht über die Anzahl an Frames verlieren, da 100+ pro Sekunde auf den Admin einprasseln.

HTTP wird sichtbar mit allen Details
HTTP wird sichtbar mit allen Details

Einfach mal filtern

Aus diesem Grund stellt Wireshark Masken zur Verfügung, mit dem der Nutzer die interessanten Pakete anzeigen lassen kann.

Filtere nach HTTP, indem Du oben in die Suchleiste HTTP eingibst.

Ein Bild wird übertragen
Ein Bild wird übertragen

Wie schütze ich mich vor MITM?

Nutze statt einem unbekannten W-LAN, Deine Mobile Daten (auch wenn es Geld kostet).

Du kannst Dir nie zu 100 % sicher sein, wer das WLAN betreibt oder wer nicht.

Jeder kann sein Handy nehmen, sich in ein Café setzen, die Mobilen Daten aktivieren, einen Hotspot ohne Passwort eröffnen und das W-LAN  „Kaffeehaus Public“ nennen. Allen ungeschützten Traffic kann der Kriminelle überwachen.

Wenn Du trotzdem ein öffentliches W-LAN nutzen willst, achte auf eine Ende-zu-Ende-Verschlüsselung, die mit TSL realisiert ist. Im Browser erkennst Du TSL an „https“ oder einem grünen Schloss.

HBanking oder andere Geldtransaktionen solltest Du nie in einem öffentlichen WLAN machen, sondern nur mit einem Tails-Live-USB, der aktuell ist.

Steffen Lippke

HTTP Traffic analysieren

Die Analyse von HTTP-Traffic mit Wireshark ist ein effektiver Weg, um den Datenverkehr zwischen einem Client (z. B. Browser) und einem Server (z. B. Website) zu verstehen. Hier ist ein einfacher Leitfaden:

1. Erfassung starten

Beginne mit dem Start der Erfassung auf der Netzwerkschnittstelle, über die der Datenverkehr läuft (z. B. Ethernet oder WLAN). Achte darauf, den Capture-Filter auf HTTP-Traffic einzuschränken, indem du port 80 verwendest. Falls HTTPS verwendet wird, kannst du den Traffic nicht direkt einsehen, da er verschlüsselt ist.

2. Filter anwenden

Nach der Erfassung kannst du den Display-Filter http nutzen, um nur HTTP-Pakete anzuzeigen. So siehst du nur relevante Daten und vermeidest unnötigen Datenverkehr wie ARP- oder DNS-Anfragen.

3. HTTP-Streams verfolgen

Um die Kommunikation zwischen Client und Server besser zu verstehen, wähle ein HTTP-Paket aus, klicke mit der rechten Maustaste darauf und wähle „Follow TCP Stream“. Dadurch wird die gesamte Anfrage und Antwort sichtbar (z. B. GET- oder POST-Anfragen sowie die Serverantworten).

4. Header und Inhalte analysieren

  • HTTP-Header: Sie enthalten wichtige Informationen wie die Methode (z. B. GET, POST), den Statuscode (z. B. 200 OK oder 404 Not Found) und zusätzliche Felder wie User-Agent oder Content-Type.
  • Dateninhalt: Bei Anfragen oder Antworten mit einem Body (z. B. bei POST oder bei HTML-Seiten) kannst du den eigentlichen Inhalt untersuchen.

5. Dateien extrahieren

Wenn HTTP verwendet wird, um Dateien (z. B. Bilder oder PDFs) zu übertragen, kannst du unter File > Export Objects > HTTP Dateien extrahieren, die im Datenverkehr enthalten sind.

6. Fehler oder Auffälligkeiten identifizieren

  • Schaue nach HTTP-Fehlercodes wie 404 (Not Found), 500 (Internal Server Error) oder 301 (Redirect).
  • Analysiere ungewöhnlich große Anfragen oder Antworten, die auf mögliche Probleme oder Angriffe hinweisen könnten.

7. Optional: HTTPS-Traffic entschlüsseln

Wenn HTTPS-Traffic analysiert werden muss, ist eine zusätzliche Einrichtung nötig. Mit Zugriff auf die privaten Schlüssel des Servers (z. B. bei eigenen Testservern) kannst du unter bestimmten Umständen den verschlüsselten Verkehr entschlüsseln.

Mit diesen Schritten kannst du HTTP-Traffic gezielt analysieren und Probleme wie langsame Ladezeiten, fehlerhafte Anfragen oder Sicherheitslücken aufdecken.

Bonus: Tipps Wireshark

Hier sind die 10 besten Tipps zur Nutzung von Wireshark, um Netzwerke effizient zu analysieren:

1. Filter richtig einsetzen

  • Capture-Filter: Reduziert die Menge an erfassten Daten (z. B. port 80 für HTTP-Traffic).
  • Display-Filter: Hilft, die angezeigten Daten zu durchsuchen (z. B. ip.src == 192.168.1.1).
  • Häufig verwendete Filter wie tcp, udp, dns oder http erleichtern die Arbeit.

2. Profile anlegen

  • Erstelle Benutzerprofile mit spezifischen Einstellungen für verschiedene Netzwerkanalysen.
  • Profile können Filter, Farben und Spaltenlayouts enthalten.

3. Farbfilter nutzen

  • Nutze Farbfilter, um Pakete hervorzuheben, z. B. rot für Fehler oder grün für erfolgreiche Verbindungen.
  • Definiere Farben in Edit > Coloring Rules.

4. Protokollhierarchie überprüfen

  • Unter Statistics > Protocol Hierarchy siehst Du, welche Protokolle wie oft verwendet werden. Ideal für eine schnelle Übersicht.

5. „Follow Stream“-Funktion

  • Mit Rechtsklick > Follow TCP Stream kannst Du die Kommunikation zwischen zwei Hosts nachvollziehen.
  • Funktioniert auch für HTTP, UDP und andere Protokolle.

6. DNS-Auflösung aktivieren

  • Aktiviere die DNS-Auflösung unter View > Name Resolution, um IP-Adressen automatisch in Hostnamen zu übersetzen.
  • Vorsicht: Kann bei großen Datenmengen Leistung kosten.

7. Experteninformationen nutzen

  • Unter Analyze > Expert Information erhältst Du eine Zusammenfassung von Anomalien, Fehlern und Warnungen im Datenverkehr.

8. Exportiere und analysiere

  • Exportiere erfasste Daten in verschiedenen Formaten (z. B. .pcap oder .csv) für die Nachbearbeitung mit anderen Tools.
  • Nutze File > Export Objects, um Dateien wie Bilder oder Dokumente aus HTTP-Traffic zu extrahieren.

9. Performance-Statistiken

  • Mit Statistics > IO Graphs kannst Du die Datenrate über die Zeit visualisieren.
  • Ideal zur Identifikation von Spitzen oder ungewöhnlichem Traffic.

10. Sicherheit beachten

  • Arbeite nur mit verschlüsselten Protokollen (z. B. HTTPS), um sensible Daten zu schützen.
  • Setze Wireshark auf sicheren Testsystemen ein, da es tiefgehenden Netzwerkzugriff benötigt.

Lass uns wissen, was du denkst! War dieses Tutorial /Beitrag hilfreich, oder hast du noch brennende Fragen? Schreibe einen Kommentar und werde Teil unserer wachsenden Community. Teile Deine Erfolge, Herausforderungen und Tipps – gemeinsam schaffen wir Großes im Bereich Security und Coding!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

get rss abo

Jetzt
Abbonnieren
academy

Erhalte Free
Security Kurs

Jeden Monat teile ich mit Mitgliedern
4 neue praxisnahe Tutorials (je 1000+ Wörter).


Trage Deine Mail, damit Du
Deine Coding + Hacking Skills erweitern kannst!