Netzwerksicherheit: Angriffszenarien
Willemers Informatik-Ecke
Netzwerke werden angegriffen. Diese Tatsache muss man bei der Administration von Netzwerken und Servern berücksichtigen. Auf dieser Seite werden ein paar dieser Szenarien vorgestellt, wie wir sie in verschiedenen Laboren der Hochschule Flensburg mit Studenten durchgespielt haben.

Die hier aufgeführten Werkzeuge sind alle Bestandteile der Linux-Distribution KALI, können aber auch bei den mesten Linux-Distributionen einzeln hinzuinstalliert werden.

IP-Spoofing: Denial of Service (DoS)

Beim IP-Spoofing wird der Absender eines Pakets gefälscht. Das bringt den Server dazu, die Antwort an einen fremden Rechner zu senden, der ggf. gar nicht exisitiert. Da der Server die Antworten nicht loswird, gerät er unter Last. Ein solcher Angriff wird als Denial of Service (DoS) bezeichnet.

Das bekannte Testtool ping hat einen Verwandten hping3, der neben dem ICMP auch TCP als Protokoll beherrscht. Hinzu kommen einige besondere Fähigkeiten.

hping3 <Optionen> <Ziel>

OptionBedeutung
-a oder --spoof hostname fälscht die Absenderadresse
--rand-source fälscht die Absenderadresse auf zufällige Werte
--flood Sende Pakete so schnell wie möglich
-1 oder --icmp Protokoll ICMP. Dies ist default

Der folgende Befehl führt einen normalen ICMP-Ping auf den Zielrechner 192.168.0.50 aus, gaukelt diesem aber vor, der Absender sei der Rechner 192.168.0.101.

hping3 --icmp --spoof 192.168.0.101 192.168.0.50
Um auf Serverseite die Belastung deutlicher sichtbar zu machen, kann dort das Tool htop installiert und anschließend ausgeführt werden.
sudo apt install htop

ARP-Spoofing: Man in the Middle

Beim ARP-Spoofing wird ein Rechner angegriffen, indem dessen ARP-Tabellen gefälscht werden.
arpspoof -i eth0 -t 192.168.0.1 192.168.0.101
Dieser Befehl bewirkt, dass die ARP-Tabelle auf dem Rechner 192.168.0.101 so geändert wird, dass für die IP-Adresse 192.168.0.1 die MAC-Adresse des angreifenden Rechners hinterlegt wird. Gibt also der Rechner 192.168.0.101 einen Ping auf die Adresse 192.168.0.1, landet er nicht dort, sondern pingt den angreifenden Rechner an. Das lässt sich prüfen, indem man die ARP-Tabellen anschaut:
arp -n
Wird auch der Rechner 192.168.0.1 angegriffen, indem dessen ARP-Tabelle beim Aufruf von 192.168.0.101 ebenfalls so verändert wird, dass die MAC-Adresse des Angreifers hinterlegt wird, läuft die Kommuniktion zwischen beiden durch den Angreifer hindurch. Dies nennt man einen Man in the Middle-Angriff, weil sich der Angreifer zwischen die Kommunikation schiebt.

Allerdings wird ein einfacher Ping noch scheitern, weil der Angreifer die Pakete nicht automatisch an den anderen Partner weiterleitet. Dieses Forwarding kann mit dem folgenden Befehl eingeschaltet werden.

echo 1 > /proc/sys/net/ipv4/ip_forward

DNS-Spoofing

Mit dem Befehl dnsspoof können DNS-Anfragen im lokalen Netz aufgefangen und im Sinne des Angreifers beantwortet werden. Da die meisten Benutzer Namen wie www.wikipedia.org statt der IP-Adresse verwenden, ist dieser Angriff auf den ersten Blick sehr wirkungsvoll.

Begrenzt wird der Erfolg dadurch, dass neben dem Angreifer auch der richtige DNS-Server irgendwann eine Antwort senden wird. Der Angreifer muss also vor allem schneller als der DNS-Server sein. Nach einiger Zeit werden die die Antworten des echten DNS-Servers dazu führen, dass der Angreifer unglaubwürdig ist.

Der folgende Befehl liest die Datei host.txt ein. Diese enthält eine Liste von IP-Adressen und zugehörigen URLs. Er hört auf das UDP-Protokoll und den Port 53. Dabei greift er gezielt den Rechner 192.168.0.101 an.

dnsspoof -f host.txt udp port 53 and host 192.168.0.101
Die Datei host.txt enthält beispielsweise folgende Zeile:
192.168.0.50  www.bankofamerica.com
Wird auf dem Zielrechner nun der entstprechende nslookup-Anfrage ausgeführt, bekommt er als Antwort die Information, dass www.bankofamerica.com unter der IP-Adresse 192.168.0.50 zu finden ist.
nslookup www.bankofamerica.com