(D)DoS Angriffe werden immer beliebter um mit einfachsten Mitteln großen Schaden anzurichten. Die Kosten eine DoS Attacke durchzuführen starten schon bei unter 100$ für einen Angriff. DoS Attacke ist aber nicht gleich DoS Attacke, hier gibt es große Unterschiede in den Varianten. Um sich entsprechend schützen zu können bedarf es multidimensionaler Konzepte die sich zudem noch je Applikation bzw. Anforderungen unterscheiden. Ein „one size fits all“ wäre schön, gibt es aber nicht. Daher geht es in diesem Artikel viel mehr darum, den Blick der Betreiber von Diensten dafür zu schärfen, wie verwundbar die eigenen Dienste doch sind.
Grundsätzlich muss man zwischen zwei Angriffsszenarien unterscheiden, die natürlich entsprechend viele Untergruppierungen aufweisen. Die beiden primären Angriffsmuster sind eine Volumenattacke oder ein Angriff auf die Applikation, auch schon mal als L7-Attack bezeichnet. Das Ziel ist in beiden Fällen das gleiche, es soll Schaden zugefügt werden. Bei einer Volumenattacke ist man am Ende seiner Internetanbindung machtlos. Hier braucht es einen anderen Ansatz für die Abwehr eines solchen Angriffs. Dazu aber später mehr, denn jetzt geht es erst einmal um die Applikation die es zu schützen gilt. Um es eher allgemein zu halten und es sich wohl um eine der am Häufigsten anzutreffenden Applikation ist, nehmen wir als Beispiel eine Webapplikation die per http(s) zu erreichen ist. Im aller einfachsten Fall ist die Anwendung aus dem Internet auf Port 80 und 443 zu erreichen. Bei http wird üblicher Weise ein Redirect auf https geschickt, aber grundsätzlich ist der Anwendungsserver über beide TCP Ports zu erreichen.
Ein ganz einfaches Mittel ist eine SYN Attacke auf den IP Stack des Betriebssystem des Anwendungsservers. Hier muss sich der Angreifer noch nicht einmal die Mühe machen herauszufinden, um welche Applikation bzw. welchen Server dahinter es sich wirklich handelt. Er nutzt einfach die Eigenschaften des TCP/IP Protokolls aus und sendet SYN Pakete für den TCP Verbindungsaufbau ohne jedoch wirklich eine Verbindung aufbauen zu wollen. Die Folge ist dann, dass das Serversystem mehr und mehr Ressourcen für die vermeintlichen TCP Sitzungen verwendet, bis ihm die Ressourcen ausgehen. Ist dies eingetreten, so hat der Angreifer sein Ziel erreicht und der Dienst ist nicht mehr verfügbar. Jetzt ist natürlich so eine SYN Attacke schon sehr alt und man sollte meinen, das hier die aktuellen Betriebssysteme von Haus aus dagegen geschützt sind. Aber leider ist das nicht immer der Fall. Es gibt noch sehr viele Systeme die dahingehend noch anfällig sind. Ein paar Zeilen Perl oder Python reichen für einen solchen Angriff zum Beispiel schon aus. Entsprechende Tools gibt es dafür sowieso.
Angriffe die schon einen kleinen Schritt weiter gehen, führen den TCP-Handshake aus und lassen ich die Webseite ausliefern, aber sehr sehr langsam. Das geschieht, weil der Angreifer sich sehr viel Zeit nimmt die TCP Bestätigung zu schicken und verzögert so die Auslieferung. Öffnet der Angreifer nun genügend Sitzungen, geht dem Webserver die Ressourcen aus und das Ziel des Angreifers ist ebenfalls erreicht, die Applikation ist nicht mehr erreichbar. Ein andere Angriff nutzt nicht den Ressourcenbedarf der Anwendung, sondern sucht gezielt nach Schwachstellen, die zum Beispiel einen Speicherüberlauf erzeugen oder einen anderen Fehler in der Anwendung provozieren, was zur Folge hat, dass die Anwendung schlicht abstürzt. Auch dann hat der Angreifer sein Ziel erreicht.
Es gibt noch ein paar mehr Möglichkeiten eine Applikation anzugreifen, aber für die Veranschaulichung des Themas sind die aufgeführten Beispiele ausreichend. Das jüngste Beispiel kommerziell getriebener (D)DoS Attacken ist die Erpressung der Deutschen Bank. Aber der Trend solcher Angriffe geht eine ganz anderen Weg. Die neue Zielgruppe der Angreifer ist der Mittelstand. Die Angreifer haben erkannt, was vielen mittelständischen Unternehmen noch gar nicht richtig bewusst geworden ist, dass sie genauso abhängig von der IT sind, wie die vermeintlichen „Großen“. Aber der Mittelstand ist häufig deutlich schlechter geschützt und somit ein leichteres Ziel. Zwar ist bei Erpressung weniger zu holen, aber dafür gibt es ja auch mehr von potentiellen Opfern.
In vielen Fällen wird es einem Angreifer aber auch viel zu leicht gemacht. Dienste werden ohne hinterfragen einfach so über das Internet veröffentlicht. Es werden keine Fragen gestellt, wie sicher ist denn die Anwendung wirklich. Welches Gefahrenpotential ergibt sich daraus. Alleine die Frage in welchen Netzsegment steht ein solcher Dienst? Von Pen-Tests oder Sicherheitsaudits der Applikation ganz zu schweigen. Die „Hauptsache es geht und es ist einfach“ Mentalität in den Anforderungen mit dem Blick nur auf die Funktion einer Anwendung, lässt jeden Ansatz von Sicherheit platzen wie eine Seifenblase. Dahinter steckt noch nicht einmal Absicht. Es werden sich einfach keine Gedanken darüber macht. Hier ist sehr viel Bedarf die Sensibilität in Sachen Sicherheit zu schärfen.
Ein Schutz vor (D)DoS Attacken ist mit geeigneten Konzepten möglich. Mit der richtigen Strategie und geeigneten Lösungen kann sich ein Betreiber entsprechend schützen. Wie diese aussehen, liegt an der Anforderungen, der Applikation und den zur Verfügung stehenden Ressourcen. Bei Fragen zum Schutz stehen wir wie gewohnt zur Verfügung.