Man-in-the-Middle-Attack: Angriffsmuster und Gegenmaßnahmen

Als Man-in-the-Middle-Attack bezeichnet man ein Angriffsmuster im Internet, bei dem ein Angreifer ein von ihm kontrolliertes System physisch oder logisch zwischen dem System des Opfers und einer vom Opfer verwendeten Internetressource platziert. Ziel des Angreifers ist es, die Kommunikation zwischen Opfer und Internetressource abzufangen, mitzulesen oder unbemerkt zu manipulieren.

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

Als Man-in-the-Middle-Attack (MITM) oder Mittelsmannangriff wird eine Methode bezeichnet, bei der sich ein Hacker in den Datenverkehr zweier Kommunikationspartner einklinkt und beiden Parteien weismacht, sie hätten es mit der jeweils anderen zu tun. Früher erfolgten solche Angriffe durch eine Manipulation des physischen Kommunikationskanals. In Zeiten gemeinsam genutzter öffentlicher Kommunikationsnetze tritt der unbefugte Dritte meist logisch zwischen zwei oder mehr Kommunikationspartner. Anwendung finden Man-in-the-Middle-Angriffe in Rechnernetzen in erster Linie, um Verschlüsselungen via SSL/TLS auszuhebeln und so Zugriff auf geheime Informationen, Benutzernamen, Passwörter oder Bankdaten zu erlangen. Folgende Grafik veranschaulicht das Grundschema eines Man-in-the-Middle-Angriffs:

System A versucht eine verschlüsselte Verbindung zu System B aufzubauen. Stattdessen wird der Datenfluss von einem kriminellen Dritten jedoch so umgelenkt, dass die verschlüsselte Verbindung von System A zu System C verläuft und erst von dort an System B weitergeleitet wird. Dies hat zur Folge, dass derjenige, der die Kontrolle über System C besitzt (in der Regel der Angreifer), den gesamten Datenverkehr einsehen, mitschneiden oder manipulieren kann – oft sogar, ohne dass die Kommunikationspartner etwas davon mitbekommen. Auf das World Wide Web übertragen, würde sich System C gegenüber System A als Webserver und gegenüber System B als Webbrowser präsentieren.

Man-in-the-Middle Angriffsmuster

Um den Datenverkehr zwischen zwei oder mehr Systemen zu infiltrieren, bedienen sich Hacker verschiedener Techniken, die an bekannten Schwachstellen der Internetkommunikation ansetzten. Eine Angriffsfläche für LAN-interne Man-in-the-Middle-Attacks bietet zum Beispiel der Service DHCP (Dynamic Host Configuration Protocol), der für die Vergabe lokaler IP-Adressen zuständig ist, sowie das ARP-System (Address Resolution Protocol) zur Ermittlung von Hardwareadressen (Media-Access-Control, MAC). Globaler lassen sich Mittelsmannangriffe durch die Manipulation von DNS-Servern realisieren, die für die Auflösung von Internetadressen in öffentliche IPs zuständig sind. Darüber hinaus nutzen Hacker Sicherheitslücken in veralteter Browsersoftware aus oder stellen nichts ahnenden Internetnutzern korrumpierte WLAN-Zugänge zur Verfügung.

In der Regel lassen sich diese Angriffsmuster durch Software automatisieren. Werden Angriffe durch menschliches Zutun in Echtzeit unterstützt, spricht man von Human-Assisted-Attacks.

DHCP-basierte Angriffe

Bei DHCP-basierten Angriffen gibt ein Hacker den eigenen Rechner (bzw. einen, der unter seiner Kontrolle steht) innerhalb eines Local Area Networks (LAN) als DHCP-Server aus. Bei einem DHCP-Server handelt es sich um eine zentrale Komponente im lokalen Netzwerk, die für die Zuweisung der Netzwerkkonfiguration an andere Rechner im LAN zuständig ist. Diese erfolgt in der Regel automatisch: Sobald ein Rechner die erste Verbindung zum LAN aufbaut, fordert der DHCP-Client des Betriebssystems Informationen wie eine lokale IP-Adresse, die Netzmaske, die Standardgateway-Adresse sowie die Adresse des zuständigen DNS-Servers an. Dazu sendet dieser eine Broadcastnachricht an alle Geräte im LAN und wartet auf die Rückmeldung eines DHCP-Servers. Die erste eingehende Antwort wird akzeptiert.

Dies bietet Hackern die Möglichkeit, über vorgetäuschte DHCP-Server die Vergabe lokaler IP-Adressen zu steuern, beliebige Standardgateways und DNS-Server auf den getäuschten Rechnern einzutragen und somit den ausgehenden Datenverkehr auf einen beliebigen Rechner umzuleiten, um Inhalte abzuhören oder zu manipulieren.

Da dieses Angriffsmuster auf der Manipulation des DHCP-Systems basiert, spricht man von DHCP-Spoofing (zu Deutsch: Manipulation). Voraussetzung für eine solche Man-in-the-Middle-Attack ist jedoch, dass sich der Angreifer im selben LAN befindet wie das Opfer. Eine Gefahr, Ziel eines DHCP-basierten Angriffs zu werden, besteht daher beispielsweise in Hotel-LANs oder öffentlichen WLAN-Netzen. Will er ein kabelgebundenes Firmennetz infiltrieren, müsste sich ein Angreifer hingegen erst einen physischen Zugang zum LAN verschaffen, um einen falschen DHCP-Server einzuschleusen.

Maßnahmen, die Internetnutzer präventiv gegen DHCP-Spoofing ergreifen können, beschränken sich in der Regel auf einen bedachten Umgang mit unbekannten Netzwerken. Generell empfiehlt es sich, sicherheitskritische Web-Anwendungen von Online-Banken oder Shopping-Portalen nur in bekannten, vertrauenswürdigen LANs wie dem privaten Heimnetz oder dem Firmennetz des Arbeitgebers zu nutzen.

ARP-Cache-Poisoning

Bei ARP handelt es sich um ein Netzwerkprotokoll, das der Auflösung von LAN-internen IP-Adressen in Hardware-Adressen (MAC-Adressen) dient. Damit ein Rechner innerhalb eines Netzwerks Datenpakete versenden kann, muss dieser die Hardware-Adresse des Empfängersystems kennen. Dazu wird ein ARP-Request als MAC-Broadcast an alle Systeme im LAN versendet. Dieser beinhaltet sowohl die MAC- und IP-Adresse des anfragenden Rechners als auch die IP-Adresse des gesuchten Systems. Empfängt ein Rechner im Netzwerk einen solchen ARP-Request, prüft dieser, ob das Paket die eigene IP-Adresse als Empfänger-IP enthält. Ist dies der Fall, wird ein ARP-Reply mit der gesuchten MAC-Adresse an das anfordernde System zurückgesendet.

Diese Zuordnung von MAC-Adresse zu lokaler IP wird in Tabellenform im sogenannten ARP-Cache des anfragenden Rechners gespeichert. Hier setzt ARP-Cache-Poisoning (Vergiftung) an. Ziel dieses Angriffsmuster ist es, die ARP-Tabellen diverser Rechner im Netzwerk durch falsche ARP-Replies zu manipulieren, um beispielsweise einen Rechner, der unter der Kontrolle des Angreifers steht, als WLAN-Access-Point oder Gateway zum Internet auszugeben.

Ist ein solches ARP-Spoofing erfolgreich, haben Angreifer die Möglichkeit, den gesamten ausgehenden Datenverkehr getäuschter Rechner mitzulesen, aufzuzeichnen oder zu manipulieren, bevor dieser an den echten Gateway weitergeleitet wird. Wie DHCP-Spoofing ist auch eine ARP-Cache-Vergiftung nur dann möglich, wenn sich der Angreifer im selben LAN befindet wie die Opfersysteme. Umsetzen lässt sich eine solche Man-in-the-Middle-Attack bereits durch einfache Programme wie das Freeware-Tool Cain & Abel, das ursprünglich zur Ermittlung verlorener Passwörter entwickelt wurde, oder durch die Software Ettercap.

Wie bei DHCP-basierten Angriffen haben Nutzer, die sich in einem korrumpierten LAN befinden, kaum eine Möglichkeit, sich gegen ARP-Spoofing zur Wehr zu setzen. Als Präventivmaßnahme gilt es daher auch hier, unbekannte Netzwerke zu meiden oder mit Bedacht zu nutzen.

DNS-basierte Angriffe

Während ARP-Cache-Poisoning Schwachstellen der Adressauflösung im Ethernet ins Visier nimmt, setzt Cache-Poisoning auf DNS-Basis am Domain-Name-System des Internets an, das für die Auflösung von URLs in öffentliche IP-Adressen zuständig ist. Bei einem solchen Angriffsmuster manipulieren Hacker Einträge im Cache eines DNS-Servers, um diesen dazu zu bringen, Anfragen mit falschen Zieladressen zu beantworten. Gelingt eine solche Man-in-the-Middle-Attack, kann der Hacker andere Internetnutzer unbemerkt auf eine beliebige Website im Netz umleiten. Dafür nutzt er meist bekannte Sicherheitslücken älterer DNS-Server.

Grundsätzlich werden DNS-Informationen nicht auf einem einzelnen DNS-Server hinterlegt, sondern auf mehrere Rechner im Netz verteilt. Möchte ein User eine Website aufrufen, nutzt dieser dazu in der Regel einen Domain-Namen. Um den entsprechenden Server adressieren zu können, wird jedoch eine IP-Adresse benötigt. Diese IP ermittelt der Router des Nutzers, indem er eine DNS-Anfrage an den in der Konfiguration angegebenen Standard-DNS-Server versendet. In der Regel handelt es sich dabei um den DNS-Server des Internet-Service-Providers (ISP). Finden sich hier Einträge – sogenannte Resource Records – zur angefragten URL, beantwortet der DNS-Server die Anfrage mit der passenden IP-Adresse. Andernfalls ermittelt der DNS-Server die gesuchte IP mithilfe anderer Server mit DNS-Aufgaben. Dazu sendet dieser eine entsprechende Suchanfrage an andere DNS-Server und speichert deren Antworten temporär im Cache.

Ein Ansatzpunkt für Hacking-Angriffe bietet sich in erster Linie bei Servern, die eine ältere Version der DNS-Software nutzen. Diese akzeptieren und speichern in der Regel nicht nur Informationen, die explizit angefordert wurden, sondern auch solche, die zusätzlich mitgeliefert werden. Gelingt es Hackern somit, einen einzelnen DNS-Server zu kapern, ist es ein Leichtes, mit jeder korrekten IP-Adresse zusätzlich gefälschte Records auszuliefern und somit den Cache anfragender DNS-Server zu vergiften.

Wie effektiv Man-in-the-Middle-Angriffe sind, zeigen Vorfälle in der Vergangenheit, bei denen ganze Namensräume umgeleitet wurden. Für Nutzer ist es so gut wie unmöglich, sich gegen einen solchen Angriff zu schützen, da dieser direkt in der Infrastruktur des Internets erfolgt. Daher ist es in erster Linie die Aufgabe der Betreiber, dafür zu sorgen, dass die von ihnen zur Verfügung gestellten DNS-Server aktuelle Software verwenden und ausreichend gesichert sind. So wurden beispielsweise unter dem Namen DNSSEC (Domain Name System Security Extensions) diverse Internetstandards entwickelt, die das DNS-System um verschiedene Sicherheitsmechanismen zur Gewährleistung der Datenauthentizität und -integrität erweitern. Die Verbreitung dieser Standards geht jedoch nur schleppend voran.

Vortäuschung eines WLAN-Access-Points

Ein Angriffsmuster, das vor allem Nutzer mobiler Endgeräte ins Visier nimmt, basiert auf der Simulation eines Access-Points in einem öffentlichen WLAN-Netz, wie es in Cafés oder an Flughäfen zur Verfügung gestellt wird. Dabei konfiguriert ein Angreifer seinen Rechner so, dass dieser einen zusätzlichen Weg ins Internet verspricht – möglicherweise einen mit besserer Signalqualität als der echte Access-Point. Gelingt es einem Angreifer, dadurch nichtsahnende Nutzer zu täuschen, kann er den gesamten Datenverkehr, der durch sein System läuft, einsehen und manipulieren, bevor dieser an den echten Access-Point weitergeleitet wird. Erfordert dieser eine Authentifizierung, erhält der Hacker zudem sämtliche Benutzernahmen und Passwörter, die für die Anmeldung verwendet werden. Die Gefahr, Opfer einer solchen Man-in-the-Middle-Attack zu werden, besteht vor allem dann, wenn Endgeräte so konfiguriert werden, dass sie sich automatisch mit dem signalstärksten Access-Point verbinden.

Um sich vor diesem Angriffsmuster zu schützen, sollten sich Internetnutzer grundsätzlich nur mit bekannten WLAN-Netzen verbinden und darauf achten, dass sie dazu den offiziellen Access-Point des Bereitstellers nutzen.

Man-in-the-Browser-Attack

Eine Variante der Man-in-the-Middle-Attack, bei der ein Angreifer Schadsoftware im Browser eines Internetnutzers installiert, um Datenverkehr abzufangen, wird Man-in-the-Browser-Attack genannt. Vor allem nicht vollständig aktualisierte Rechner bieten Sicherheitslücken, die es Angreifern ermöglichen, das System zu infiltrieren. Wurden spezielle Programme erst einmal in den Browser eines Nutzers eingeschleust, zeichnen diese im Hintergrund sämtliche Daten auf, die zwischen dem Opfersystem und verschiedenen Webseiten im Netz ausgetauscht werden. Dieses Angriffsmuster erlaubt es Hackern, mit relativ wenig Aufwand eine große Anzahl an Systemen abzuhören. Dabei erfolgt die Datenspionage in der Regel, bevor eine mögliche Transportverschlüsselung via TLS/SSL greift.

Man-in-the-Browser-Angriffen beugen Internetnutzer am effektivsten vor, wenn diese darauf achten, dass alle Software-Komponenten des verwendeten Systems auf dem aktuellen Stand sind und bekannte Schwachstellen durch Sicherheitsupdates geschlossen wurden.

Human-Assisted-Attack

Von einer Human-Assited-Attack spricht man, wenn eines der oben dargestellten Angriffsmuster nicht rein automatisch abläuft, sondern durch einen oder mehrere Angreifer in Echtzeit gesteuert wird. In der Praxis könnte ein solcher Man-in-the-Middle-Angriff folgendermaßen ablaufen: Sobald sich ein Internetnutzer auf der Website seiner Bank einloggt, bekommt ein Hacker, der sich zwischen dem Browser des Nutzers und dem Server der Bank platziert hat, ein Signal. Dieser hat nun die Möglichkeit, die Session-Cookies und Authentifizierungsinformationen in Echtzeit zu stehlen und so an Benutzernamen, Passwörter und TANs zu gelangen.

Man-in-the-Middle-Angriff vorbeugen

Für Betroffene ist es in der Regel kaum möglich, zu erkennen, ob ein Man-in-the-Middle-Angriff vorliegt. Der beste Schutz ist daher die Vorbeugung. Im Folgenden haben wir die wichtigsten Tipps zusammengestellt, wie Internetnutzer und Webseitenbetreiber das Risiko, Ziel eines MITM-Angriffs zu werden, minimieren können.

Tipps für Internetnutzer

  • Achten Sie darauf, dass Sie Webseiten stets über eine SSL/TLS-gesicherte Verbindung aufrufen. Die Internetadresse beginnt in diesem Fall mit https. Bloße http-Verbindungen sind ein Sicherheitsrisiko.
  • Überprüfen Sie, ob das SSL-Zertifikat einer Website aktuell ist und von einer vertrauenswürdigen Zertifizierungsstelle ausgestellt wurde – insbesondere bevor Sie Anmeldedaten eingeben.
  • Verwenden Sie stets die aktuelle Version Ihres bevorzugten Webbrowsers und halten Sie Ihr Betriebssystem mit Updates auf dem neuesten Stand.
  • Vermeiden Sie die Nutzung von frei zugänglichen VPNs oder Proxy-Servern.
  • Halten Sie Ihre Passwörter stets auf dem aktuellen Stand, nutzen Sie für jede Anwendung ein eigenes Passwort und verwenden Sie alte Passwörter nicht noch einmal.
  • Meiden Sie öffentliche WLAN-Spots – beispielsweise im Hotel, am Bahnhof oder in Geschäften.
  • Sollten Sie nicht umhinkommen, auf öffentliche Netzwerke zuzugreifen, vermeiden Sie Downloads, übermitteln Sie keine Anmeldedaten – beispielsweise für Ihr E-Mail-Postfach oder soziale Netzwerke – und nehmen Sie auf keinen Fall Zahlungen vor.
  • Nutzen Sie zusätzliche Methoden zur sicheren Anmeldung, sofern der Betreiber einer Website diese anbietet – beispielsweise eine Multifaktor-Authentifizierung (MFA) via Token oder Einmal-Passwörter per SMS oder Smartphone-App.
  • Klicken Sie nicht auf Links in E-Mails von unbekannten Absendern, die Sie möglicherweise auf eine mit Malware bestückte Website locken könnten.

Tipps für Webseitenbetreiber

  • Schützen Sie die Daten Ihrer Kunden, indem Sie insbesondere Webseiten mit Kunden-Login mit einem aktuellen SSL-Zertifikat einer zuverlässigen Zertifizierungsstelle sichern.
  • Bieten Sie Ihren Kunden zusätzliche Methoden zur sicheren Anmeldung – beispielsweise eine Multifaktor-Authentifizierung per E-Mail.
  • Kommunizieren Sie Ihren Kunden gegenüber, dass Sie Anmeldedaten prinzipiell nie durch E-Mails abfragen und vermeiden Sie Hyperlinks in Kunden-Mails.