Maksim Kabakou - Fotolia

Ettercap für Netzwerk-Pentesting, Monitoring, Analyse nutzen

Ettercap ist ein kostenloses Tool für das Netzwerk-Monitoring. Es ist ideal, um Netzwerkaktivitäten zu überwachen und verdächtige Muster zu erkennen. Wir zeigen, wie das geht.

Ettercap ist ein vielseitiges Open-Source-Tool, das sich auf die Durchführung von Man-in-the-Middle-Angriffen (MITM) und die Analyse von Netzwerkverkehr spezialisiert hat. Es bietet eine robuste Plattform zur Manipulation und Überwachung von Netzwerkprotokollen, indem es ermöglicht, Datenpakete in Echtzeit abzufangen und zu modifizieren.

Ettercap ist für gängige Linux- und BSD-Distributionen sowie macOS verfügbar und steht hier zum kostenlosen Download bereit. Dort gibt es auch nicht unterstützte Versionen für Windows, OpenSUSE und Solaris. Ettercap ist auch bereits in Kali Linux enthalten. Unter Ubuntu installieren Sie Ettercap zum Beispiel mit diesen Befehlen:

sudo apt update

sudo apt install ettercap-common

Ettercaps Fähigkeit, verschiedene Angriffsmethoden wie ARP-Spoofing, DNS-Spoofing und SSL-Strip durchführen, macht es zu einem wertvollen Werkzeug im Bereich des Netzwerk-Pentestings.

Beachten Sie bitte unseren Artikel zur rechtlichen Lage bei Penetrationstests.

Interessant ist auch die Integration von Plug-ins, welche die Funktionalität von Ettercap erheblich erweitern und die gezielte Analyse sowie automatisierte Angriffsmuster auf Protokollebene ermöglichen. Die Plug-ins sind nach dem Start von Ettercap über das Menü mit den drei Punkten rechts oben und der Auswahl von Filters zu finden. Nach einem Doppelklick integriert das Tool das jeweilige Plug-in, zum Beispiel dns_spoof oder dos_attack.

Durch die tiefgreifende Protokollunterstützung und die Möglichkeit, den Netzwerkverkehr granular zu filtern und zu manipulieren, ist Ettercap nicht nur für offensive Sicherheitsprüfungen geeignet, sondern auch ein nützliches Werkzeug für die kontinuierliche Überwachung und Sicherstellung der Netzwerkintegrität.

Mit Plug-ins lassen sich die Funktionen von Ettercap noch erweitern.
Abbildung 1: Mit Plug-ins lassen sich die Funktionen von Ettercap noch erweitern.

Für die verschiedenen Angriffe, die Ettercap simulieren kann, gibt es Schutzmöglichkeiten im eigenen Netzwerk. Auf diese gehen wir ebenfalls ein. Setzen Unternehmen diese um, sollten die Angriffe von Ettercap ins Leere laufen. Funktionieren die Attacken aber, müssen Nacharbeiten erfolgen, um zukünftige echte Angriffe erfolgreich abzuwehren.

Beispiel eines Man-in-the-Middle-Angriffes mit Ettercap

Wie erwähnt, können Admins Ettercap zum Test von MITM-Attacken nutzen. Im Rahmen eines solchen Angriffes flutet Ettercap den Netzwerkverkehr zum Beispiel mit gefälschten ARP-Daten. Bei MITM-Attacken kommt der Address Resolution Protocol Cache auf Computern zum Einsatz. Dabei handelt es sich um den lokalen Zwischenspeicher für die Zuordnung zwischen IP-Adresse und MAC-Adresse. Der Inhalt des Speichers lässt sich in Windows in der Befehlszeile zum Beispiel mit arp -a anzeigen. Auf Linux-Rechnern steht dazu ip n s zur Verfügung. Diese Informationen können auch dabei helfen MITM-Angriffe zu erkennen, da der Befehl anzeigt, ob auf einem Rechner eine MAC-Adresse für zwei oder mehr verschiedene IP-Adressen gespeichert ist. Das kann auf einen ARP-Spoofing-Angriff hindeuten.

MITM-Attacke mit Ettercap und Kali vorbereiten

Der einfachste Weg, um einen Angriff durchzuführen und zu analysieren, besteht darin Kali-Linux zu nutzen. Hier stehen alle Tools zur Verfügung, die dazu notwendig sind, zum Beispiel auch WireShark. Dadurch lassen sich Angriffe erkennen und anschließend bekämpfen. Nach dem Start von Ettercap wird der Netzwerkadapter ausgewählt, auf dem das Tool Netzwerkverkehr sniffen soll.

Ettercap starten und Netzwerkadapter auswählen.
Abbildung 2: Ettercap starten und Netzwerkadapter auswählen.

Danach startet der Sniffervorgang. Über das Menü mit den drei Punkten oben rechts und der Auswahl von Hosts/Hosts list sind die Geräte und deren IP-Adressen zu finden, die aktuell im Netzwerk kommunizieren. Einstellungen sind keine notwendig. Um einen MITM-Angriff zu starten, wir der erste Computer in der Hostliste mit der rechten Maustaste angeklickt und Add to Target 1 ausgewählt.

Anzeigen der Host-Liste in Ettercap zum Starten eines Netzwerkangriffs und Definieren der Angriffsziele.
Abbildung 3: Anzeigen der Host-Liste in Ettercap zum Starten eines Netzwerkangriffs und Definieren der Angriffsziele.

Für einen effektiven Test können Sie auf dem Computer noch eine Freigabe und eine Textdatei mit beliebigem Inhalt erstellen. Durch den MITM-Angriff lässt sich danach das Öffnen der Freigabe und der Datei sowie deren Inhalt in WireShark nachvollziehen. So würden auch Angreifer vorgehen. Auf dem Computer kann dann der ARP-Cache mit arp -a geöffnet werden. Für einen Test macht es Sinn sich die originale MAC-Adresse des Rechners mit der Freigabe zu notieren.

Bei dem folgenden Angriff wird die MAC-Adresse des Computers mit der MAC-Adresse eines anderen Computers vertauscht, in diesem Fall mit dem Computer auf dem Ettercap gestartet ist, zum Beispiel aus Kali-Linux heraus. Dadurch kann Ettercap Daten von Nutzern mitschneiden und so Informationen sammeln.

Bis zu diesem Punkt hat Ettercap aber noch keine Aktionen durchgeführt. Das Tool liest nur Daten im Netzwerk mit, genauso wie es ein Angreifer machen würde. Nachdem der erste Computer als Ziel definiert ist, erfolgt die Festlegung des zweiten Computers, zwischen den sich Ettercap schalten soll, um Daten mitzulesen. Dieser wird auf dem gleichen Weg mit Add to Target 2 definiert. Unten im Ettercap-Fenster sind die Aktionen zu sehen. Der Ettercap-Computer kann danach die Daten zwischen den beiden Geräten sniffen und auslesen. Die Vorgänge lassen sich parallel mit WireShark analysieren.

MITM-Angriff durchführen

Auf der rechten Seite ist in Ettercap oben ein Icon mit einer Weltkugel zu finden. Durch einen Klick auf das Icon können Sie verschiedene MITM-Attacken auswählen. Für das Testen eines MITM-Angriffes ist hier zum Beispiel ARP-Poisoning interessant. Der Angriff lässt sich an dieser Stelle auch gleich starten. ARP-Poisoning ist ein Standard-Angriff für Man-in-the-Middle-Attacken, bei der ein Angreifer die Zuordnung von IP-Adressen zu MAC-Adressen im ARP-Cache eines Zielsystems manipuliert. Im Zusammenhang mit Ettercap wird dieser Angriff genutzt, um den Netzwerkverkehr zwischen zwei oder mehreren Geräten unbemerkt umzuleiten. Dabei vergiftet der Angreifer die ARP-Tabellen der betroffenen Hosts, indem er sich als Gateway oder ein anderer Netzwerkteilnehmer ausgibt. Dies ermöglicht es ihm, den gesamten Datenverkehr zwischen den Opfern abzufangen, zu analysieren oder zu manipulieren, ohne dass die Betroffenen dies bemerken.

Starten eines ARP-Poisoning-Angriffs mit Ettercap.
Abbildung 4: Starten eines ARP-Poisoning-Angriffs mit Ettercap.

Der ARP-Poisoning-Angriff lässt sich jederzeit in Ettercap stoppen oder auch andere Ziele definieren, die zum Einsatz kommen sollen. Nach dem Beenden des Angriffes haben die ausgewählten Zielsysteme nach kurzer Zeit wieder eine richtige Zuordnung der MAC-Adressen.

Starten Admins auf dem Target-2-Rechner die Abfrage des ARP-Caches mit arp -a, dann ist bei einem aktivem MITM-Angriff die MAC-Adressen von Target 1 mit dem Ettercap-Rechner identisch. Der MITM-Computer kann sich als ein anderer Computer ausgeben, um Daten im Netzwerk auszulesen. Der Client, der als Target 2 definiert ist, geht davon aus, dass der Kali-Computer mit Ettercap der Target-1-Computer sei, auf dem die bereits erwähnte Freigabe aktiv ist. Das ermöglicht das Aufzeichnen des Datenverkehrs auf dem Kali-Rechner, obwohl die Daten zwischen Target 2 und Target 1 versendet werden. Das ist ein typischer MITM-Angriff.

MITM-Angriffe stören Netzwerke nicht und sind daher gefährlich

Solche Angriffe stören das Netzwerk nicht, sodass sich Cyberkriminelle ungestört im Netz bewegen können, um Daten auszulesen. In diesem Beispiel kann der Rechner mit Ettercap Daten auslesen, die zwischen Target 1 und Target 2 ausgetauscht wurden. Sind die Daten nicht verschlüsselt, mit WireShark auch den Inhalt der Datenpakete auslesen. Dazu können Admins auch Aufzeichnungen von WireShark auf dem Kali/Ettercap-Computer nutzen. Nach dem Beenden von Ettercap auf dem MITM-Rechner, endet das ARP-Posioning, so dass der Angriff nicht mehr sichtbar ist. Lassen sich Admins in diesem Beispiel in WireShark über einen Filter den SMB-Verkehr anzeigen, sind alle Zugriffe zwischen Target 1 und Target 2 zu finden, inklusive Inhalt der Textdatei, die für diesen Test geöffnet war.

Weitere Angriffsmöglichkeiten mit Ettercap

NDP-Poisoning und ICMP Redirect

Parallel zum ARP-Poisoning stehen in Ettercap weitere Angriffsmöglichkeiten zur Verfügung, um Pentesting mehrerer Computer durchzuführen. NDP (Neighbor Discovery Protocol) Poisoning ist ein Angriff, der sich gegen IPv6-Netzwerke richtet und auf dem Missbrauch des NDP basiert. Im Kern funktioniert der Angriff, indem falsche Neighbor-Advertisement-Nachrichten gesendet werden, um die Zuordnung zwischen IPv6-Adressen und MAC-Adressen zu manipulieren. Der Angreifer kann so den Datenverkehr auf sein eigenes System umleiten oder stören. Auch hier wird Ettercap so konfiguriert, dass gefälschte NDP-Pakete an den Zielhost und das Gateway gesendet werden. Dies führt dazu, dass der Datenverkehr, der für das Gateway bestimmt ist, über das System des Angreifers läuft. Dazu legen Sie die angegriffenen Computer wieder als Target 1 und Target 2 fest. In der Praxis lässt sich dies durch die Nutzung von Ettercaps integrierten Filtern weiter verfeinern, um gezielten Datenverkehr abzufangen oder zu manipulieren. Um sich gegen solche Angriffe zu schützen, ist die Implementierung von Secure Neighbor Discovery (SEND) oder der Einsatz von IPv6-fähigen Firewalls notwendig, die verdächtige NDP-Pakete erkennen und blockieren. Dieser Schutz lässt sich mit dem NDP-Poisoning-Angriff überprüfen.

ICMP-Redirect-Angriffe zielen darauf ab, das Routing eines Zielhosts zu manipulieren, indem gefälschte ICMP-Redirect-Nachrichten an das Ziel gesendet werden. Diese Nachrichten sollen den Host dazu bringen, den Datenverkehr über einen anderen, vermeintlich effizienteren Router zu schicken, der jedoch vom Angreifer kontrolliert wird. Im Kontext eines solchen Angriffs können Sie Ettercap dazu verwenden, um ICMP-Redirect-Nachrichten zu generieren und so den Host zu veranlassen, seinen Netzwerkverkehr umzuleiten. Im praktischen Einsatz identifiziert der Angreifer zunächst den Datenfluss des Zielhosts, um gezielt ICMP-Redirect-Pakete an ihn zu senden. Ettercap wird so konfiguriert, dass der legitime Router im Netzwerk imitiert wird, indem gefälschte Redirect-Nachrichten gesendet werden, die auf den Angreifer als neuen Router verweisen. Der Ziel-Host übernimmt diese falschen Informationen und leitet seinen gesamten Datenverkehr über den Angreifer, was diesem ermöglicht, sensible Informationen abzugreifen oder den Verkehr zu manipulieren.

Port Stealing mit Ettercap

Port Stealing ist ein Angriff, der sich vor allem in geswitchten Netzwerken nutzen lässt, um Datenverkehr abzufangen, der eigentlich für andere Hosts bestimmt ist. Ein Switch sendet normalerweise den Datenverkehr nur an den Port, der der MAC-Adresse des Empfängers zugeordnet ist. Beim Port-Stealing-Angriff manipuliert der Angreifer, in diesem Fall Ettercap, die MAC-Tabellen des Switches, um den Datenverkehr an sich selbst umzuleiten. Mit Ettercap lässt sich dieser Angriff gezielt mit dem Senden gefälschter ARP-Pakete durchführen, die den Switch dazu bringen, die MAC-Adresse des Opfers mit dem Port des Angreifers zu verknüpfen. Danach sendet Ettercap ARP-Pakete mit der gefälschten Absender-MAC-Adresse des Opfers, sodass der Switch glaubt, das Opfer befinde sich am Port des Angreifers. Der Switch aktualisiert seine MAC-Adresstabelle entsprechend, und der an das Opfer gerichtete Datenverkehr wird an den Angreifer weitergeleitet. Um die Verbindung des Opfers nicht vollständig zu unterbrechen, sendet der Angreifer periodisch eigene ARP-Pakete, um den Switch so zu manipulieren, dass der Datenverkehr zwischen Opfer und Ziel weiterhin fließt, während der Angreifer gleichzeitig Zugriff auf die Daten erhält. Um Port Stealing zu verhindern, sollten Admins dynamische ARP-Inspektion (DAI) und Port-Security auf Switches aktivieren, um unzulässige Änderungen in den MAC-Tabellen zu unterbinden.

DHCP-Spoofing-Angriffe

Beim DHCP Spoofing installiert ein Angreifer einen gefälschten DHCP-Server in einem Netzwerk, um Clients falsche IP-Konfigurationen zuzuweisen. Das Ziel ist es, den Netzwerkverkehr der Opfer zu manipulieren, indem sie beispielsweise eine falsche Gateway-Adresse erhalten und so ihren gesamten Traffic über den Angreifer leiten. Mit Ettercap können Sie einen Test mit diesem Angriff effektiv durchführen, indem das Tool als Rogue-DHCP-Server agiert und DHCP-Anfragen der Clients abfängt sowie mit manipulierten Antworten versorgt.

Ettercap kann auch DHCP-Spoofing-Attacken durchführen, mit denen sich das Netzwerk auf Anfälligkeiten für diese Angriffe testen lässt.
Abbildung 5: Ettercap kann auch DHCP-Spoofing-Attacken durchführen, mit denen sich das Netzwerk auf Anfälligkeiten für diese Angriffe testen lässt.

In der Praxis beginnt der Angreifer, indem er den Datenverkehr im lokalen Netzwerk überwacht, um DHCP-Anfragen von Clients zu erkennen. Sobald eine Anfrage gesendet wird, antwortet der Angreifer schneller als der legitime DHCP-Server und teilt dem Client eine IP-Adresse sowie ein falsches Gateway oder DNS-Server mit. Der Client verbindet sich dann über die vom Angreifer bereitgestellten Parameter mit dem Netzwerk, was es dem Angreifer ermöglicht, den gesamten Verkehr des Clients zu überwachen oder sogar umzuleiten. Besonders kritisch kann dieser Angriff sein, wenn der Angreifer gefälschte DNS-Server bereitstellt, um den Client auf bösartige Websites zu leiten. Zur Vermeidung von DHCP-Spoofing sollten Administratoren DHCP-Snooping auf Switches aktivieren, um sicherzustellen, dass nur autorisierte DHCP-Server DHCP-Parameter an Netzwerkgeräte ausliefern können.

Erfahren Sie mehr über Netzwerksicherheit