Denial of Service

So funktionieren DDoS-Angriffe

29.04.2018
Von Alfredo Vistola

HTTP Flooding

Anders als die meisten einfachen Netzwerk-Angriffe, bei denen mit böswillig geänderten oder fehlerhaften Paketen Computing-Ressourcen überlastet werden, gehen HTTP-Flooding-Angriffe wie legale HTTP-Webanfragen von normalen Anwendern aus. Daher sind herkömmliche Firewall-Technologien nicht in der Lage, diese Angriffe vom normalen Datenverkehr zu unterscheiden, sodass sie an die Webserver im Rechenzentrum weitergeleitet werden. Da es sich bei HTTP-Flooding-Angriffen um Tausende oder Millionen von Anfragen handelt, werden die Webserver und häufig auch die Infrastruktur (Bandbreite, Applikationsserver, Datenbankserver, ...) überlastet.

Die beiden häufigsten Varianten von HTTP-Flooding-Angriffen unterscheiden sich in der Intelligenz der Angriff-Clients und vom gesendeten Inhalt. Bei der einfachen Variante senden die Angriff-Clients immer wieder die gleichen Anfragen und analysieren in der Regel keine Antworten vom Server. Das Programm oder Skript, das auf diesen Angriff-Clients läuft, ist einfach zu programmieren, aber auch einfacher zu identifizieren.

Bei der erweiterten Variante senden die Angriff-Clients Anfragen an die Startwebsite, analysieren die Antwort vom Server und können rekursiv weitere Anfragen an alle Unterseiten senden. Diese Angriffe sind schwer zu erkennen und zu filtern, da legitime und unterschiedliche Anfragen passend zur Antwort vom Server geschickt werden - ähnlich dem normalen Anwenderverhalten. Die Angriffs-Clients werden im Laufe der Zeit immer intelligenter, was letztlich zu einem Wettrüsten zwischen Sicherheitsverantwortlichen und Angreifern führt.

Langsames Überlaufen

Für Schlagzeilen sorgte die 2009 veröffentlichte Software Slowloris , mit der ein einzelner Rechner unter minimaler Verwendung von Netzwerkressourcen einen Webserver lahmlegen kann. Das Prinzip beruht darauf, möglichst viele Verbindungen zum Zielserver aufzubauen und diese so lange wie möglich offen zu halten. Dieser Effekt wird durch das gleichzeitige Öffnen von Verbindungen und dem Senden von Teilanfragen erreicht. Von Zeit zu Zeit werden die Anfragen durch weitere HTTP-Header ergänzt, aber nie vollständig abgeschlossen. Die Anzahl offener Verbindungen steigt somit rasch an. Ein Webserver kann aber nur eine bestimmte Anzahl von Verbindungen parallel offen halten - darüber hinaus gehende Anfragen lehnt der Webbrowser schließlich ab. Ergebnis: Der Server ist lahmgelegt.

Slow POST beruht auf einem ähnlichen Prinzip. Der Angreifer sendet die Daten hier lediglich sehr langsam an den Server. Das Ergebnis ist jedoch das gleiche.