Der Inside-Out-Sicherheits Blog - Der Inside-Out-Sicherheits Blog

ARP-Poisoning: Was ARP-Poisoning ist und wie man ARP-Spoofing-Angriffe verhindert | Varonis

Geschrieben von Robert Grimmick | May 5, 2021 4:00:00 AM

ARP Poisoning ist eine Art von Cyberangriff, der Schwachstellen im weit verbreiteten Adress Resolution Protocol (ARP) ausnutzt, um den Netzwerkdatenverkehr zu unterbrechen, umzuleiten oder auszuspionieren. In diesem Beitrag werfen wir einen kurzen Blick auf die Zwecke von ARP, die Schwachstellen, die ARP-Poisoning ermöglichen, und was Sie tun können, um Ihr Unternehmen dagegen abzusichern.

Entdecken Sie Ihre Schwachstellen und stärken Sie Ihre Resilienz: Führen Sie einen kostenlosen Ransomware-Bereitschaftstest durch

Was ist ARP?

Das Address Resolution Protocol (ARP) existiert, um den mehrschichtigen Ansatz zu unterstützen, der seit den frühesten Tagen der Computernetzwerke verwendet wird. Die Funktionen der einzelnen Schichten – von den elektrischen Signalen, die über ein Ethernet-Kabel laufen, bis hin zum HTML-Code, mit dem eine Website gerendert wird – arbeiten weitgehend unabhängig voneinander. Dadurch können wir IPv4 – eine Netzwerkschicht-Technologie aus den frühen 1980er Jahren – mit neueren Technologien wie WLAN und Bluetooth verwenden: Durch die untere physische Schicht und die Datenverbindungsschicht wird die Datenübertragung über ein bestimmtes Medium wie Funkwellen bewerkstelligt.

ARP wird dazu genutzt, zwischen den Adressen auf der Datenverbindungsschicht – den MAC-Adressen – und den Adressen auf der Netzwerkschicht – in der Regel IP-Adressen – zu übersetzen. Über das Protokoll können vernetzte Geräte „fragen“, welchem Gerät zurzeit eine bestimmte IP-Adresse zugewiesen ist. Geräte können diese Zuordnung auch unaufgefordert dem Rest des Netzwerks mitteilen. Zur Effizienzsteigerung werden diese Antworten normalerweise von Geräten zwischengespeichert, und es wird eine Liste der aktuellen MAC-IP-Zuordnungen erstellt.

Was ist ARP-Poisoning?

Beim ARP-Poisoning werden die Schwachstellen von ARP missbraucht, um die MAC-IP-Zuordnungen anderer Geräte im Netzwerk zu korrumpieren. Sicherheit war bei der Einführung von ARP im Jahr 1982 kein vorrangiges Anliegen, daher haben die Entwickler des Protokolls keine Authentifizierungsmechanismen zur Validierung von ARP-Nachrichten vorgesehen. Jedes Gerät im Netzwerk kann eine ARP-Anfrage beantworten, unabhängig davon, ob die ursprüngliche Nachricht für es bestimmt war oder nicht. Wenn zum Beispiel Computer A nach der MAC-Adresse von Computer B „fragt“, kann ein Angreifer von Computer C aus antworten und Computer A würde diese Antwort als authentisch akzeptieren. Diese Sicherheitslücke hat viele Angriffe ermöglicht. Durch den Einsatz leicht verfügbarer Tools kann ein Bedrohungsakteur den ARP-Cache anderer Hosts in einem lokalen Netzwerk „vergiften“ (Poisoning), indem er ihn mit falschen Einträgen füllt.

Schritte eines ARP-Poisoning-Angriffs

Die genauen Schritte eines ARP-Poisoning-Angriffs variieren, umfassen aber im Allgemeinen mindestens die folgenden:

1. Angreifer wählt ein oder mehrere Zielgeräte aus

Der erste Schritt bei der Planung und Durchführung eines ARP-Poisoning-Angriffs ist die Auswahl eines Ziels. Dies kann ein bestimmter Endpunkt im Netzwerk, eine Gruppe von Endpunkten oder ein Netzwerkgerät wie ein Router sein. Router sind attraktive Ziele, da ein erfolgreicher ARP-Poisoning-Angriff gegen einen Router den Datenverkehr für ein komplettes Subnet stören kann.

2. Angreifer startet Tools und beginnt mit dem Angriff

Wenn man einen ARP-Poisoning-Angriff durchführen möchte, stehen einem zahlreiche Tools zur Verfügung. Nachdem der Angreifer das Tool seiner Wahl gestartet und die entsprechenden Einstellungen vorgenommen hat, beginnt er mit dem Angriff. Nun kann er sofort mit dem Senden von ARP-Nachrichten beginnen oder warten, bis eine Anfrage empfangen wird.

3. Angreifer nutzt den falsch geleiteten Datenverkehr aus

Sobald der ARP-Cache eines oder mehrerer Zielcomputer korrumpiert wurde, führt der Angreifer in der Regel irgendeine Art von Aktion mit dem falsch geleiteten Datenverkehr durch. Er kann beispielsweise überprüft oder modifiziert werden, oder der Angreifer „blackholet“ ihn, sorgt also dafür, dass er sein Ziel nie erreicht. Die genaue Aktion hängt von den Motiven des Angreifers ab.

Arten von ARP-Poisoning-Angriffen

Es gibt zwei allgemeine Möglichkeiten für einen ARP-Poisoning-Angriff: Der Angreifer kann entweder warten, bis er ARP-Anfragen für ein bestimmtes Ziel sieht und dann eine Antwort ausgeben; oder er kann eine unaufgeforderte Broadcast-Meldung verschicken, was als „gratuitous ARP“ (unaufgefordertes ARP) bezeichnet wird. Der erste Ansatz ist im Netzwerk weniger auffällig, aber möglicherweise auch weniger weitreichend in Bezug auf seine Auswirkungen. Ein unaufgefordertes ARP kann unmittelbarer sein und eine größere Anzahl von Zielgeräten betreffen, hat aber den Nachteil, dass er viel Netzwerkverkehr erzeugt. Bei beiden Ansätzen können die korrumpierten ARP-Caches der Zielrechner für weitere Zwecke missbraucht werden:

Man-in-the-Middle-Angriff (MiTM)

MiTM-Angriffe sind wahrscheinlich das häufigste und potenziell gefährlichste Ziel, das durch ARP-Poisoning verfolgt wird. Der Angreifer sendet gefälschte ARP-Antworten für eine bestimmte IP-Adresse, in der Regel das Standard-Gateway für ein bestimmtes Subnet. Dadurch werden die ARP-Caches der Zielgeräte mit der MAC-Adresse des Angreifergeräts statt mit der des lokalen Routers gefüllt. Die Zielgeräte leiten dann Netzwerkdatenverkehr irrtümlich an den Angreifer weiter. Mit Tools wie Ettercap kann der Angreifer als Proxy agieren und Informationen anzeigen oder ändern, bevor er den Datenverkehr an sein vorgesehenes Ziel sendet. Auf dem Zielgerät wirkt alles absolut normal.

Indem ARP-Poisoning mit DNS-Poisoning kombiniert wird, wird ein MiTM-Angriff deutlich effektiver. In einem solchen Szenario kann dann der angegriffene Benutzer eine legitime Website wie google.com eintippen und die IP-Adresse des Angreifergeräts erhalten, anstelle der rechtmäßigen Adresse.

DoS-Angriff (Denial of Service)

Ein DoS-Angriff zielt darauf ab, einem oder mehreren Opfern den Zugriff auf Netzwerkressourcen zu verweigern. Im Fall von ARP kann ein Angreifer ARP-Antwortnachrichten versenden, die fälschlicherweise Hunderte oder sogar Tausende von IP-Adressen einer einzelnen MAC-Adresse zuordnen, wodurch das Zielgerät überfordert werden kann. Diese Art von Angriff, manchmal auch als „ARP-Flooding“ bezeichnet, kann auch auf Switches abzielen und die Leistung des gesamten Netzwerks beeinträchtigen.

Session-Hijacking

Session-Hijacking-Angriffe sind ähnlich wie Man-in-the-Middle-Angriffe. Hier leitet der Angreifer den Datenverkehr jedoch nicht direkt vom Zielgerät an sein vorgesehenes Ziel weiter. Stattdessen fängt er eine echte TCP-Sequenznummer oder ein Web-Cookie des Opfers ab und verwendet sie, um die Identität des Opfers anzunehmen. Dadurch kann z. B. auf das Social-Media-Konto eines Zielbenutzers zugegriffen werden, falls dieser gerade eingeloggt ist.

Welche Ziele haben ARP-Poisoning-Angriffe?

Hacker haben viele verschiedene Motive, und beim ARP-Poisoning ist es nicht anders. Ein Angreifer könnte einen ARP-Poisoning-Angriff aus einer Vielzahl von Gründen durchführen, die von hochrangiger Spionage bis hin zum bloßen Nervenkitzel reichen, Chaos im Netzwerk zu verursachen. In einem möglichen Szenario verwendet ein Angreifer gefälschte ARP-Nachrichten, um die Rolle des Standard-Gateways für ein bestimmtes Subnet einzunehmen und so den gesamten Datenverkehr an den Rechner des Angreifers statt an den lokalen Router zu leiten. Dann kann er den Datenverkehr ausspionieren, modifizieren oder verschwinden lassen. Solche Angriffe sind „laut“ in dem Sinne, dass sie Spuren hinterlassen, aber sie stören den eigentlichen Betrieb des Netzwerks nicht unbedingt. Wenn Spionage das Ziel ist, wird das angreifende Gerät den Datenverkehr einfach an sein ursprüngliches Ziel weiterleiten und dem Endbenutzer keinen Hinweis darauf geben, dass etwas nicht stimmen könnte.

Andererseits kann der Zweck eines DoS-Angriffs auch darin bestehen, eine deutlich spürbare Störung des Netzwerkbetriebs zu verursachen. Das kann dazu dienen, die Betriebsfähigkeit eines Unternehmens zu beeinträchtigen, aber DoS-Angriffe werden oft auch von weniger raffinierten Angreifern ausgeführt, weil es ihnen einfach Spaß macht, für Ärger zu sorgen.

Insider-Angriffe sind bei ARP-Poisoning besonders gefährlich. Gespoofte ARP-Nachrichten reichen nicht über die Grenzen eines lokalen Netzwerks hinaus, daher muss der Angriff von einem Gerät ausgehen, das lokal verbunden ist. Es ist nicht unmöglich, dass ein Außenstehender einen ARP-Angriff initiiert, aber dazu muss er zuerst ein lokales System mit anderen Mitteln kompromittieren. Ein Insider bräuchte hingegen nur Netzwerkzugang und einige leicht verfügbare Tools.

ARP-Spoofing und ARP-Poisoning im Vergleich

Die Begriffe ARP-Spoofing und ARP-Poisoning werden im Allgemeinen austauschbar verwendet. Technisch gesehen bezeichnet Spoofing einen Angreifer, der die MAC-Adresse eines anderen Rechners imitiert. Poisoning bezeichnet die Korruption der ARP-Tabellen auf einem oder mehreren Zielgeräten. In der Praxis sind dies jedoch beides Unterelemente desselben Angriffs, und im allgemeinen Sprachgebrauch werden beide Begriffe verwendet, um den Angriff als Ganzes zu bezeichnen. Ähnliche Begriffe sind auch ARP-Cache-Poisoning oder ARP-Tabellenkorruption.

Welche Folgen hat ein ARP-Poisoning-Angriff?

Die direkteste Auswirkung eines ARP-Poisoning-Angriffs besteht darin, dass der Datenverkehr, der für einen oder mehrere Hosts im lokalen Netzwerk bestimmt ist, stattdessen zu einem Ziel umgeleitet wird, das der Angreifer auswählt. Welche Folgen das genau hat, hängt von den Besonderheiten des Angriffs ab. Der Datenverkehr kann an den Computer des Angreifers oder an einen nicht vorhandenen Ort gesendet werden. In der ersten Instanz gibt es möglicherweise keinen beobachtbaren Effekt, während die zweite Instanz den Zugriff auf das Netzwerk behindert.

Das ARP-Cache-Poisoning selbst hat keine dauerhaften Auswirkungen. ARP-Einträge werden zwischen einigen Minuten (auf Endgeräten) und mehreren Stunden (auf Switches) zwischengespeichert. Sobald ein Angreifer mit dem aktiven Tabellen-Poisoning aufhört, veralten die beschädigten Einträge einfach und der korrekte Datenverkehrsfluss stellt sich bald wieder ein. ARP-Poisoning allein hinterlässt keine dauerhafte Infektion oder Position auf den Zielgeräten. Hacker verketten jedoch oft viele Arten von Angriffen miteinander, und das ARP-Poisoning kann als Teil einer größeren Kampagne verwendet werden.

So erkennen Sie einen ARP-Cache-Poisoning-Angriff

Es gibt eine Vielzahl von kommerziellen und Open-Source-Softwarelösungen zur Erkennung von ARP-Cache-Poisoning. Sie können aber auch einfach die ARP-Tabellen auf Ihrem eigenen Computer überprüfen, ohne etwas installieren zu müssen. Auf den meisten Windows-, Mac- und Linux-Systemen kann man den Befehl „arp -a“ vom Terminal oder der Befehlszeile aus ausführen, um die aktuellen IP-MAC-Adresszuordnungen des Geräts anzuzeigen.

Tools wie arpwatch und X-ARP sind für die kontinuierliche Überwachung des Netzwerks nützlich und können einen Administrator alarmieren, wenn Anzeichen eines ARP-Cache-Poisoning-Angriffs zu erkennen sind. Falsch-positive Ergebnisse sind jedoch ein Problem und können viele unerwünschte Alarme erzeugen.

Prävention von ARP-Poisoning-Angriffen

Es gibt mehrere Ansätze, um ARP-Poisoning-Angriffe zu verhindern:

Statische ARP-Tabellen

Es ist möglich, alle MAC-Adressen in einem Netzwerk statisch ihren korrekten IP-Adressen zuzuordnen. Zur Prävention von ARP-Poisoning-Angriffen ist das eine sehr effektive Maßnahme, allerdings geht damit auch sehr viel Verwaltungsaufwand einher. Jede Änderung am Netzwerk erfordert eine manuelle Aktualisierung der ARP-Tabellen auf allen Hosts, was statische ARP-Tabellen für die meisten größeren Unternehmen unpraktikabel macht. Dennoch kann in Situationen, in denen Sicherheit sehr wichtig ist, ein separates Netzwerksegment abgetrennt werden, in dem statische ARP-Tabellen verwendet werden. So lassen sich kritische Informationen effektiv schützen.

Switch-Sicherheit

Die meisten verwalteten Ethernet-Switches verfügen über Funktionen zur Abwehr von ARP-Poisoning-Angriffen. Diese Funktionen werden meist als Dynamic ARP Inspection (DAI) bezeichnet und bewerten die Gültigkeit jeder ARP-Nachricht, um Pakete zu entfernen, die verdächtig oder bösartig erscheinen. DAI kann in der Regel auch so konfiguriert werden, dass die Frequenz, mit der ARP-Nachrichten den Switch durchlaufen können, begrenzt wird. So werden DoS-Angriffe effektiv verhindert.

DAI und ähnliche Funktionen waren früher ausschließlich High-End-Netzwerkgeräten vorbehalten, sind aber heute bei fast allen Switches der Unternehmensklasse üblich, auch bei denen, die in kleineren Betrieben eingesetzt werden. Es gilt gemeinhin als Best Practice, DAI an allen Ports zu aktivieren, außer an denen, die mit anderen Switches verbunden sind. Die Funktion beeinträchtigt die Leistung nicht signifikant, muss aber möglicherweise in Verbindung mit anderen Funktionen wie DHCP-Snooping aktiviert werden.

Die Aktivierung der Port-Sicherheit auf einem Switch kann auch dazu beitragen, ARP-Cache-Poisoning-Angriffen entgegenzuwirken. Die Port-Sicherheit kann so konfiguriert werden, dass nur eine einzelne MAC-Adresse auf einem Switch-Port möglich ist, sodass ein Angreifer keine Möglichkeit hat, böswillig mehrere Netzwerkidentitäten anzunehmen.

Physische Sicherheit

Die ordnungsgemäße Kontrolle des physischen Zugangs zu Ihrem Unternehmensstandort kann dazu beitragen, ARP-Poisoning-Angriffen entgegenzuwirken. ARP-Nachrichten werden nicht über die Grenzen des lokalen Netzwerks hinaus weitergeleitet. Daher müssen sich potenzielle Angreifer in physischer Nähe zum Zielnetzwerk befinden oder bereits die Kontrolle über einen Rechner im Netzwerk haben. Beachten Sie, dass bei drahtlosen Netzwerken „Nähe“ nicht unbedingt bedeutet, dass der Angreifer direkten physischen Zugriff hat; ein Signal, das bis zu einer Straße oder einem Parkplatz reicht, kann vollkommen ausreichen. Ob kabelgebunden oder drahtlos – Technologien wie 802.1x können dafür sorgen, dass nur vertrauenswürdige und/oder verwaltete Geräte eine Verbindung zum Netzwerk herstellen können.

Netzwerkisolierung

Wie bereits erwähnt, gehen ARP-Nachrichten nicht über das lokale Subnet hinaus. Das bedeutet, dass ein gut segmentiertes Netzwerk insgesamt weniger anfällig für ARP-Cache-Poisoning sein kann, da sich ein Angriff in einem Subnet nicht auf Geräte in einem anderen auswirkt. Die Konzentration wichtiger Ressourcen in einem dedizierten Netzwerksegment, in dem erhöhte Sicherheitsmaßnahmen vorhanden sind, kann die potenziellen Auswirkungen eines ARP-Poisoning-Angriffs erheblich verringern.

Verschlüsselung

Verschlüsselung verhindert zwar keine ARP-Angriffe, kann jedoch den potenziellen Schaden mindern. Ein beliebtes Ziel von MiTM-Angriffen war früher das Abfangen von Anmeldedaten, die zuvor oft unverschlüsselt übertragen wurden. Mit der weitverbreiteten Nutzung von SSL/TLS-Verschlüsselung im Web ist diese Art von Angriff schwieriger geworden. Der Bedrohungsakteur kann weiterhin den Datenverkehr abfangen, kann damit aber nichts anfangen, da er verschlüsselt ist.

Nur eine von vielen Bedrohungen

Obwohl es ARP-Poisoning schon viel länger gibt als moderne Bedrohungen wie Ransomware, handelt es sich dabei immer noch um eine Gefahr, gegen die Unternehmen angehen müssen. Wie alle Cyber-Bedrohungen wird sie am besten durch ein umfassendes Informationssicherheitsprogramm bekämpft. Eine Lösung wie die Bedrohungserkennung und -bekämpfung von Varonis kann Ihnen dabei helfen, sich einen Überblick über die allgemeine Sicherheitslage Ihres Unternehmens zu verschaffen. Mit Varonis Edge lassen sich Anzeichen von Datenexfiltration erkennen, die nach einem ARP-Poisoning-Angriff auftreten kann.