1.4.3 Denial of Service (DoS)



Als Denial of Service (DoSDenial of Service) werden Angriffe bezeichnet, deren Ziel es ist, einen Dienst außer Kraft zu setzen. So sind eine ganze Reihe von Angriffen auf WWWWorld Wide Web-Server großer Anbieter bekannt geworden. Es gibt verschiedene Möglichkeiten dazu. Die System-Ressourcen werden bei DoS-Angriffen wesentlich stärker beansprucht als im normalen Betrieb. Auch können Implementierungsschwächen ausgenutzt werden.

Verteilter dos angriff des gra de.gif

Bei einem verteilter DoS-Angriff (Distributed DoS, DDoSDistributed Denial of Service) greifen gleichzeitig verschiedene kompromittierte Systeme das Opfer an, wobei jedes einzelne System einen DoS-Angriff ausführt. Laut BSI-Lagebericht 2014 gab es in Deutschland 2104 mehr als 32.000 solcher Angriffe. Der Angreifer muss möglichst viele Systeme erobert haben, um Agenten installieren zu können, die den eigentlichen DoS-Angiff ausführen sollen. Dieses Systeme heißen dann Bots. Die Infizierung wird meist automatisch mittels Schadsoftware durchgeführt. Dabei wird nach fehlerhaft konfigurierten Systemen oder angreifbaren Softwarepaketen gesucht. Nach Installation der Agenten-Software auf diesen Systemen, z.B. durch Versenden von Trojanern in Emails, warten die Agenten auf Anweisungen, bevor sie gleichzeitig einen massiven Angriff auf das Opfer starten. Einige Arten erlauben sogar eine verschlüsselte Kommunikation zwischen den Angreifer und den Agenten.

Im Folgenden werden einige mögliche Angriffe beschrieben:

  • Bei manchen Angriffen wird einfach eine große Flut von unsinnigen Daten erzeugt und diese in Richtung des Servers geschickt. Dieses ist beispielsweise mit dem LOIC Tool möglich und erreicht seine Wirkung, wenn das von vielen gleichzeitig gemacht wird. Bei diesem simpel zu bedienenden Tool kann man auch leicht das Kommando über den eigenen Rechner an einen Koordinator abgeben (über einen IRC-Kanal), der dann die Angriffe steuert.
  • Beim SYNSynchronize Flooding-Angriff werden SYN-Segmente an einen aktiven Port (z.B. Port 80, HTTPHyperText Transfer Protocol) gesendet. Der Server sendet ein SYN/ACKAcknowledgement-Segment zurück, das aber nicht vom Angreifer beantwortet wird, sodass die Verbindung nicht vollständig aufgebaut wird. Der Server merkt sich diese halb-offene Verbindung in einer besonderen Warteschlange, die nicht sehr groß ist. Im normalen Betrieb wird sehr schnell das abschliessende ACK-Segment des Clients gesendet. Damit ist dann die Verbindung vollständig aufgebaut und kann aus der Warteschlange für halb-offene Verbindungen entfernt werden. Wenn das abschliessende ACK-Segment nicht eintrifft, bleibt die halb-offene Verbindung in der Warteschlange erhalten und wird erst nach einem Timeout, der im Minuten-Bereich liegen kann, entfernt. Außerdem wiederholt der Server mehrmals das SYN/ACK-Segment (z.B. fünf mal). Beim Angriff werden viele halb-offene Verbindungen erzeugt, sodass die Warteschlange schnell vollläuft und damit keine anderen Verbindungen mehr bedient werden können – damit ist der Dienst lahmgelegt. Der Angriff benötigt nur eine geringe Bitrate, da nur wenige Segmente an den Server gesendet werden müssen, um ihn zu überlasten. Da darüberhinaus die Absender-IPInternet Protocol-Adressen bei diesem Angriff fast immer gefälscht werden, ist es schwierig den Angreifer zu identifizieren.
  • Es gibt Gegenmaßnahmen, mit denen man die Auswirkungen von SYN Floods begrenzen kann. Dabei erfolgt die Reservierung von Ressourcen auf dem angegriffenen System erst nach erfolgreichem Three-Way-Handshake. Die Angreifer können den Angriff aber modifizieren und führen den TCPTransmission Control Protocol-Verbindungsaufbau zuende, aber senden dann auf aktiven Verbindungen nur wenig Daten. Wenn sie relativ viele dieser Verbindungen aufgebaut haben, wird der Server überlastet (siehe Slowloris Tools). Der modifizierte Angriff funktioniert jedoch nicht mit gefälschten IP-Adressen, sondern setzt viele Bots voraus.
  • Bei einem Smurf-Angriff werden die Auswirkungen eines Angriffs verstärkt. Dazu wird eine ICMPInternet Control Message Protocol-Echo-Anfrage an die Broadcast-Adresse des Netzes oder Sub-Netzes gesendet. Alle aktiven Hosts senden daraufhin eine ICMP-Echo-Antwort an den Absender zurück. Dieses Verfahren wird in der Praxis häufig von Netzwerk-Management Stationen eingesetzt, um festzustellen, welche Hosts im Netz aktiv sind. Beim Angriff wird die Absender-Adresse des Angreifers durch die Adresse des Opfers ersetzt, das dann alle Antworten erhält. Die Anzahl der Rechner, die die Antworten senden, wird als Verstärkungsrate bezeichnet. Wenn die Verstärkungrate gross ist, können das Ziel-Netzwerk oder der Ziel-Rechner leicht überflutet werden. Es wird auch eine Variante dieser Angriffsart eingesetzt, da Router häufig ICMP-Nachrichten mit einer Broadcast-Adresse nicht weiterleiten. Bei einem Fraggle-Angriff werden deshalb UDPUser Datagram Protocol-Pakete an die Broadcast-Adresse des verstärkenden Netzwerkes gesendet, typischerweise an den Echo-Port 7. Jedes System, auf dem der Echo-Dienst aktiv ist, sendet dann das Paket an das Opfer weiter, wodurch eine große Datenmenge erzeugt wird. Wenn der Echo-Dienst nicht aktiv ist, wird immerhin noch eine ICMP-Nachricht „Port Unreachable“ erzeugt und an das Opfer gesendet.

Eine Sammlung von Informationen zu DDoS-Angriffen wird von Google Ideas und Arbor Networks angeboten.