SynFlooding-Attacke auf Giga.de – Wie funktioniert eigentlich der DDoS-Angriff?

von

Wie ihr von David lesen konntet, werden seit Anfang September gegen Giga.de sogenannte DDoS-Attacken gefahren. Wir erklären Euch hier, wie die Angriffe technisch ablaufen.

SynFlooding-Attacke auf Giga.de – Wie funktioniert eigentlich der DDoS-Angriff?

Unterschied zwischen DoS und DDoS

Mit Denial of Service (zu Deutsch etwa Dienstverweigerung, abgekürzt DoS) wird in der IT-Sprache die Überlastung eines Systems, also beispielsweise eines Servers, bezeichnet. Das kann ganz normale Gründe haben wie zu geringe Serverkapazitäten oder Programmierfehler. Es kann allerdings auch ein von Crackern, Script-Kiddies oder sonstigen Kriminellen gesteuerter gezielter Angriff auf eine Server-Infrastruktur sein, mit dem Ziel eine Website unerreichbar zu machen. Dann spricht man von einer DoS-Attacke. Werden für den Angriff mehrere Rechner zusammengeschaltet, handelt es sich darüber hinaus um eine Distributed Denial of Service-Attacke (DDoS).

Was passiert bei einer DDoS-Attacke?

Um eine DDoS-Attacke zu starten, benötigt man normalerweise ein Netzwerk, idealerweise ein Botnetz, also ein Netzwerk von gekaperten “Zombie-Rechnern”. Diese machen im Prinzip nichts anderes, als vom Webserver der attackierten Seite Seiten aufzurufen. Dabei wird Traffic erzeugt. Statt nun aber lediglich eine Seite alle paar Sekunden aufzurufen, werden hunderte oder tausende Verbindungen pro Sekunde nahezu gleichzeitig aufgebaut. Und dies macht nicht nur ein PC, sondern möglicherweise zigtausende gleichzeitig. Damit prasseln auf den oder die Server der angegriffenen Website mehr Anfragen ein, als diese beantworten können. Der Server macht nun das, was jeder von uns auch machen würde, der mit einer Fülle von Anfragen konfrontiert wird. Er beantwortet in der Reihenfolge des Eingangs die ersten und schiebt alle anderen nach hinten. Da die Flut an Anfragen aber nicht nachlässt, wird die Schlange von noch abzuarbeitenden Anfragen immer länger. Bis der Server irgendwann aufgibt und in die Knie geht. Dann ist die Website vorübergehend nicht mehr erreichbar. Denial of Service.

Eine DDoS-Variante: SynFlooding

Nicht jede DDoS-Attacke ist gleich. Es gibt zig verschiedene Varianten, um einen Webserver mit Anfragen zu überlasten. Die Giga-Angreifer verwenden eine SynFlood genannte DDoS-Attacke. Beim SynFlooding wird in den Handshake-Prozess gleich zu Beginn der Verbindungsaufnahme eingegriffen. Normalerweise wird eine Verbindung zwischen zwei Rechnern im Internet über das TCP/IP-Protokoll erzeugt. Dieses Protokoll sieht zu Beginn ein sogenanntes Handshake vor, das im Prinzip nichts anderes ist als das, was Menschen auch machen, wenn sie sich erst mal die Hand geben. Man gibt zu erkennen, dass man den anderen wahrgenommen hat und stellt damit eine Kommunikationsverbindung her.

Ein wenig TCP/IP: Wie funktioniert der Handshake

Bei einem Webserver und einem Client, also einem normalen PC, läuft das Handshake so ab: Der Client-PC schickt an den Webserver ein Flag mit “SYN”, was eine Aufforderung ist, die Kontaktanfrage zu bestätigen. Der PC fragt gewissermaßen an die IP-Adresse “Hallo, ist da wer?”. SYN steht dabei für Synchronize. Der Webserver beantwortet dieses mit einem zweiten Flag zurück, einem “SYN + ACK”. ACK steht dabei für Acknowledge, Bestätigt. Jetzt bestätigt wiederum der Client die Verbindung ebenfalls mit einem “ACK”. Danach wird erst ausgehandelt, was der Client eigentlich vom Server will.

SynFlood-Attacke: Server mittels Handshake austricksen

Eine SynFlood-Attacke funktioniert nun so, dass die Clients aus dem Botnet solche SYN-Anfragen massenhaft an einen Server, zum Beispiel einen Webserver, senden. Dieser beantwortet alle wie oben beschrieben mit einem “SYN + ACK” und wartet auf das bestätigende “ACK” der Clients. Darauf kann er allerdings bis in alle Ewigkeit warten. Die SYN-Anfragen werden nämlich mit völlig fiktiven nicht existierenden IPs versehen, die “SYN + ACK”-Antwort landet also irgendwo im Daten-Nirwana. Natürlich wartet der Webserver nicht ewig auf das ACK, aber ein paar Sekunden lang hält er die vermutete Verbindung erst einmal aufrecht. Schließlich kann es auch mal sein, dass ein regulärer PC etwas Zeit braucht, um zu antworten. Auch ein Server kann aber nur eine begrenzte Anzahl von Verbindungen gleichzeitig offen halten. Und wenn sehr viele gar nicht existierende Schein-Clients den Server zwingen sehr viele Verbindungen zu öffnen und eine bestimmte Zeitlang offen zu halten, um auf eine Antwort zu warten, sind das irgendwann zu viele offene Verbindungen. Der Webserver kann keine weiteren Verbindungen mehr öffnen, schiebt alle weiteren Anfragen wie oben beschrieben in die Warteschlange, die dann immer länger wird, weil die Anfragemenge ja nicht weniger wird.

Die Abwehrmaßnahmen gegen SynFlooding

Das einfachste, was man gegen eine SynFlood-Attacke machen kann, ist demnach, einfach die Zeit zu verkürzen, in der ein Server auf das bestätigende “ACK”-Flag wartet, den “TimeOut”. Eine weitere klassische Abwehrmethode ist der Einsatz von SYN-Cookies, um schneller Fake-Anfragen erkennen zu können. Aber es gibt noch einige weitere Maßnahmen, die IT-Spezialisten ergreifen können, um einen Server vor SynFlood-Attacken zu schützen. Welche das genau sind, können wir hier natürlich nicht schreiben, aber unsere Techniker haben inzwischen einige Servereinstellungen angepasst und neue Skripte eingefügt, die es den Angreifern erschweren sollten, Giga vom Netz zu nehmen. Ob das gelingt, ist natürlich nicht entschieden, denn auch unsere Angreifer lernen dazu und passen ihre Attacken an. Ein bisschen ist das wie das bekannte Hase-und-Igel-Rennen.

Weitere Infos:

Giga.de wird attackiert
Interview mit Tillmann Werner von Kaspersky
Tatort Internet
Erpresser sind keine “Hacker”

Weitere Themen: GIGA-App mit neuen Themenkanälen, GIGA-EM Spielplan 2012, GIGA


Kommentare zu diesem Artikel

Anzeige
GIGA Marktplatz