GNU/Linux >> LINUX-Kenntnisse >  >> Linux

TCP/IP-Angriffe – ARP-Cache-Poisoning-Grundlagen erklärt

Angenommen, „A“ und „B“ sind sehr gute Freunde und „A“ teilt alle seine Geheimnisse mit „B“.

Wenn jetzt ein Typ „C“ hereinkommt und so tut, als wäre er „B“. Können Sie sich vorstellen, was passieren könnte? Ja, „A“ könnte „C“ all seine Geheimnisse verraten und „C“ könnte sie missbrauchen.

In Laiensprache meinen wir das mit ARP-Cache-Poisoning.

ARP-Poisoning kann viele ernsthafte Netzwerkprobleme verursachen und Netzwerkadministratoren sollten wissen, wie dieser Angriff funktioniert.

ARP-Protokoll

Bevor wir zur Beschreibung des ARP-Cache-Poising übergehen, wollen wir zunächst die Funktionsweise des ARP-Protokolls auffrischen. Das ARP-Protokoll besteht aus den folgenden 4 grundlegenden Nachrichten:

  1. ARP-Anfrage:Computer ‚A‘ fragt im Netzwerk:„Wer hat diese IP?“
  2. ARP-Antwort:Alle anderen Computer ignorieren die Anfrage, außer dem Computer, der die angeforderte IP hat. Dieser Computer, sagen wir „B“, sagt, ich habe die angeforderte IP-Adresse und hier ist meine MAC-Adresse.
  3. RARP-Anfrage:Dies ist mehr oder weniger dasselbe wie eine ARP-Anfrage, mit dem Unterschied, dass in dieser Nachricht eine MAC-Adresse an das Netzwerk gesendet wird.
  4. RARP-Antwort:Gleiches Konzept. Computer „B“ sagt, dass die angeforderte MAC meine ist und hier meine IP-Adresse ist.

Alle Geräte, die mit dem Netzwerk verbunden sind, haben einen ARP-Cache. Dieser Cache enthält die Zuordnung aller MAC- und IP-Adressen für die Netzwerkgeräte, mit denen dieser Host bereits kommuniziert hat.

ARP-Cache-Poisoning-Konzept

Das ARP-Protokoll wurde entwickelt, um einfach und effizient zu sein, aber ein großer Fehler des Protokolls ist die fehlende Authentifizierung. Der Implementierung wurde keine Authentifizierung hinzugefügt, und daher gibt es keine Möglichkeit, die IP-zu-MAC-Adressenzuordnung in der ARP-Antwort zu authentifizieren. Außerdem überprüft der Host nicht einmal, ob er eine ARP-Anforderung gesendet hat, für die er eine ARP-Antwortnachricht erhält.

Einfach ausgedrückt:Wenn Computer „A“ eine ARP-Anfrage gesendet hat und eine ARP-Antwort erhält, kann das ARP-Protokoll auf keinen Fall überprüfen, ob die Informationen oder die IP-zu-MAC-Zuordnung in der ARP-Antwort korrekt sind oder nicht. Auch wenn ein Host keine ARP-Anforderung gesendet hat und eine ARP-Antwort erhält, vertraut er auch den Informationen in der Antwort und aktualisiert seinen ARP-Cache. Dies wird als ARP-Cache-Poisoning bezeichnet.

Sie können also sehen, dass es einfach ist, diese Schwäche des ARP-Protokolls auszunutzen. Ein böser Hacker kann eine gültige ARP-Antwort erstellen, in der jede IP einer beliebigen MAC-Adresse nach Wahl des Hackers zugeordnet wird, und diese Nachricht an das gesamte Netzwerk senden. Alle Geräte im Netzwerk akzeptieren diese Nachricht und aktualisieren ihre ARP-Tabelle mit neuen Informationen, und auf diese Weise kann der Hacker die Kontrolle über die Hin- und Herkommunikation von jedem Host im Netzwerk erlangen.

ARP-Cache-Poisoning-Folgen

Nachdem ein Hacker die Möglichkeit einer ARP-Cache-Vergiftung erkannt hat, kann der Angreifer verschiedene Angriffstechniken verwenden, um den Computer des Opfers zu beschädigen oder die Kontrolle über ihn zu erlangen. Lassen Sie uns einige davon hier besprechen:

1) Dienstverweigerung

Ein Hacker kann eine ARP-Antwort senden, die eine IP-Adresse im Netzwerk mit einer falschen oder nicht vorhandenen MAC-Adresse abbildet. Beispielsweise wird eine gefälschte ARP-Antwort, die die Router-IP des Netzwerks mit einem nicht vorhandenen MAC abbildet, die Konnektivität des gesamten Netzwerks mit der Außenwelt beeinträchtigen, da jetzt jedes Paket, das an die IP des Routers gesendet wird, an eine Maschine mit einer MAC-Adresse gesendet wird das gibt es nicht.

2) Man-in-Middle

Wie der Name schon sagt, kann der Hacker seine Maschine direkt zwischen die Kommunikation zwischen Ihrem System und jedem anderen System im Netzwerk setzen. Auf diese Weise kann der Hacker den gesamten Datenverkehr von und zu beiden Maschinen ausspionieren.

Um dies zu erreichen, nehmen Sie an, Ihr Computer ist Host „A“ und Ihr Netzwerkrouter ist Host „B“. „A“ hat IP-A und MAC-A, während „B“ IP-B und MAC-B als IP-Adresse bzw. MAC-Adresse hat. Jetzt sendet der Hacker eine ARP-Antwort an den Router, der Ihre IP (IP-A) mit der MAC-Adresse seiner Maschine abbildet, und eine weitere ARP-Antwort an Ihre Maschine, die die Router-IP mit der MAC-Adresse seiner Maschine abbildet. Jetzt erreicht jede Nachricht, die von Ihrem Computer an den Router oder vom Router an Ihren Computer gesendet wird, den Computer des Hackers. Der Hacker kann jetzt die Funktion „IP-Weiterleitung“ auf seinem Computer aktivieren, wodurch der Computer des Hackers den gesamten Datenverkehr hin und her zu Ihrem Computer und Router weiterleiten kann. Auf diese Weise sitzt die Maschine des Hackers genau in der Mitte und kann den Datenverkehr ausspionieren oder blockieren.

3) MAC-Flooding

Für Switches im Netzwerk ist MAC-Flooding eine ARP-Cache-Poising-Technik, die verwendet wird. Viele Netzwerk-Switches können sich bei Überlastung wie ein Hub verhalten und den gesamten Netzwerkverkehr an alle mit dem Netzwerk verbundenen Hosts übertragen. Ein Hacker kann also einen Switch mit gefälschten ARP-Antworten überfluten und den Switch so einstellen, dass er sich wie ein Hub verhält. In dieser Rolle aktiviert der Switch nicht seine „Port-Sicherheits“-Funktion, aufgrund derer er den gesamten Netzwerkverkehr sendet und der Hacker dies ausnutzt, um das Netzwerk zu schnüffeln.

ARP-Cache-Poisoning-Minderungstechniken

Das Vergiften des ARP-Cache aus der Ferne ist etwas schwierig, da es entweder einen physischen Zugriff auf das Netzwerk oder die Kontrolle über eine der Maschinen im Netzwerk erfordert. Da es nicht immer einfach ist, sind ARP-Angriffe nicht häufig zu hören. Wie auch immer, Vorsichtsmaßnahmen sind besser als die Einnahme von Medikamenten. Netzwerkadministratoren sollten darauf achten, dass diese Art von Angriffen nicht stattfinden. Hier sind einige Abschwächungspunkte:

  • Für kleine Netzwerke können statische ARP-Einträge gepflegt werden. Statisch bedeutet unveränderlich, daher können diese Einträge, wie der Name schon sagt, nicht geändert werden und somit scheitern alle Versuche von Hackern, die Zuordnung zu ändern. Dies ist gut für kleine Netzwerke, aber nicht für große Netzwerke, da die Zuordnung für jedes neue Gerät, das dem Netzwerk hinzugefügt wird, manuell durchgeführt werden muss.
  • Für ein großes Netzwerk können die Port-Sicherheitsfunktionen von Netzwerk-Switches untersucht werden. Einige Funktionen zwingen den Switch, wenn sie eingeschaltet sind, nur eine MAC-Adresse für jeden physischen Port am Switch zuzulassen. Diese Funktion stellt sicher, dass Computer ihre MAC-Adresse nicht ändern und ihrem Computer nicht mehr als einen MAC zuordnen können, wodurch Angriffe wie „Man in Middle“ verhindert werden.
  • Im Allgemeinen können einige Überwachungstools wie ARPwatch bereitgestellt werden, um Warnungen zu erhalten, wenn böswillige ARP-Aktivitäten in Ihrem Netzwerk stattfinden.

Abschließend haben wir in diesem Artikel die Grundlagen des ARP-Protokolls untersucht, seine Schlupflöcher, wie diese Schlupflöcher ausgenutzt und gemildert werden können.

Der nächste Artikel in dieser Reihe lautet:TCP-Sequenznummernvorhersage und TCP-Reset-Angriffe.


Linux
  1. Hinzufügen eines statischen Eintrags zum System-ARP-Cache (CentOS/RHEL)

  2. Localhost-TCP/IP-Kommunikation in einem Programm verwenden - immer sicher?

  3. Wie kann ich alle IPs im verbundenen Netzwerk auflisten, vorzugsweise über Terminal?

  4. Standardmäßiges Arp-Cache-Timeout

  5. Wann werden STALE-Arp-Einträge FAILED, wenn sie nie verwendet werden?

So verbinden Sie NGINX mit PHP-FPM über UNIX oder TCP/IP Socket

Grundlagen des TCP/IP-Protokolls anhand eines Diagramms erklärt

TCP-Angriffe:TCP-Sequenznummernvorhersage und TCP-Reset-Angriffe

Ettercap-Tutorial:Beispiele für DNS-Spoofing und ARP-Poisoning

Was ist DHCP und wie funktioniert DHCP? (DHCP-Grundlagen erklärt)

Überprüfen Sie den ausgehenden Netzwerkverkehr