URL dieser Newsmeldung:

13.07.2006

About Security #63: Angriffe auf TCP/IP – DDoS


Wie angekündigt geht es diese Woche um weitere Angriffe auf TCP/IP: Distributed Denial of Service (DDoS-)Angriffe. Während bei einem DoS-Angriff der Angriff von einem einzelnen Rechner ausgeht, nutzt der Angreifer bei einem DDoS-Angriff eine große Zahl von Rechnern. So genannte "Distributed Denial of Service Tools" wie Trinoo, Stacheldraht, Shaft oder Tribal Flood Network (TFN) / TFN2K dienen dem Aufbau der für die Angriffe genutzten Flood-Netzwerke und sind auch ohne tief greifende Fachkenntnisse zu bedienen.

Prinzipiell werden für einen DDoS-Angriff dieselben Verfahren wie für einen DoS-Angriff verwendet (siehe About Security #58). Allerdings wird der Angriff nicht direkt vom Rechner des Angreifers ausgeführt, sondern von einer Vielzahl DDoS-Daemons, die der Angreifer zuvor eingerichtet hat. Meist wird zwischen Angreifer und DDoS-Daemon ein weiteres System eingesetzt, das die Steuerung der Daemons übernimmt.

About Security: Die komplette Serie

DDoS am Beispiel von Trinoo
Ein Trinoo-Netzwerk besteht aus einem oder mehreren Mastern, die jeder eine große Anzahl von Daemons kontrollieren. Sowohl Master als auch Daemon müssen unter Ausnutzung vorhandener Schwachstellen in fremde Systeme eingeschleust werden. Ist dies gelungen, kann der Angreifer jederzeit Verbindung mit dem oder den Master(n) aufnehmen und den Angriff gegen einen Server oder ein Netz starten. Der oder die Master kontaktieren daraufhin die Daemons, die den eigentlichen DoS-Angriff durchführen.

Trinoo-Netzwerk

Die Kommunikation zwischen dem Angreifer und den Mastern erfolgt typischerweise über TCP-Port 27665, die zwischen Master und Daemon über UDP-Port 27444 bzw. zwischen Daemon und Master über UDP-Port 31335. Die jeweiligen Zugänge sind durch ein Passwort geschützt.

DDoS durch Botnets
Eine weitere Möglichkeit zur Steuerung und Durchführung von DDoS-Angriffen sind Botnets. Dabei handelt es sich um eine Vielzahl so genannter IRC-Bots, die über IRC (Internet Relay Chat) gesteuert werden. Auf sie wird in einem zukünftigen Feature gesondert eingegangen.

DDoS durch DNS Amplification Attacks
Eine sehr neue Entwicklung sind DNS Amplification Attacks. Vereinfacht wird dabei eine Vielzahl von DNS-Anfragen mit der gefälschten Senderadresse des Opfers abgeschickt, die jede zu einer möglichst großen Antwort führen.

Die maximale Größe eines DNS-Response-Pakets war ursprünglich 512 Bytes. Eine typische DNS-Anfrage von 60 Bytes konnte also zu einer maximal 512 Byte großen Antwort führen, was einem Verstärkungsfaktor von 8,5 entspricht.

Durch Erweiterungen des Protokolls wurde eine Vergrößerung der DNS-Antworten notwendig (siehe RFC 2671, Extension Mechanisms for DNS (EDNS0)), sodass der Absender der DNS-Anfrage nun einen ausreichend großen Puffer reservieren und dessen Größe dem befragten Name-Server mitteilen kann. Wird eine Puffergröße von 4.000 Bytes verwendet, führt eine DNS-Anfrage von 60 Bytes nun zu einer um mehr als das 60-fache verstärkten Antwort.

Der Angreifer benötigt für seinen Angriff nur einen gültigen Domain-Namen, zu dessen DNS-Einträgen ein großer Text-Record gehört und eine DNS-Anfrage mit gefälschter Senderadresse.

Wie beim DNS-Spoofing kann der Angreifer einen eigenen Name-Server verwenden. Diesen konfiguriert er entsprechend RFC 2671 so, dass u.a. ein großer Text-Record vorhanden ist. Ein hoher Timeout-Wert sorgt dafür, dass die Daten von den für den Angriff ausgenutzten Name-Servern lange gecached werden.

Der Angreifer konstruiert dann eine DNS-Anfrage nach allen DNS-Einträgen zu seiner Domain, gibt einen großen Puffer an und verwendet als Senderadresse die des gewünschten Opfers. Diese gefälschte DNS-Anfrage wird an eine Reihe von Name-Servern, die rekursive Anfragen von beliebigen Clients entgegennehmen (sog. Open Resolver), gesendet. Für das Senden der Anfragen kann z.B. ein Botnet verwendet werden. Die Name-Server beantworten die Anfragen und senden ihre Antwort an die gefälschte Senderadresse, wodurch es beim Opfer zum DoS durch Überflutung kommt.

DNS Amplification Attack

Gegenmaßnahmen
Sich vor (D)DoS-Angriffen zu schützen ist extrem schwierig, da keine Maßnahme vor einer vollständigen Auslastung der Bandbreite schützen kann. Um z.B. DNS Amplification Attacks grundsätzlich zu verhindern, müssten alle als Open Resolver dienenden Name-Server umkonfiguriert werden, sodass sie nur noch Anfragen aus ihrem eigenen Netz entgegennehmen. Da die Anzahl der Open Resolver mit ca. 580.000 angegeben wird, ist damit vorerst nicht zu rechnen.

Trotzdem (oder gerade deswegen) sollten die eigenen Systeme so sicher wie möglich konfiguriert werden. Im Fall der Name-Server bedeutet das z.B., sofern möglich Rekursion zu deaktivieren oder rekursive Anfragen nur aus dem eigenen Netz entgegenzunehmen. Ein nicht-rekursiver Name-Server ist auch nicht anfällig für Cache-Poisoning. Das CERT Coordination Center der Carnegie Mellon University hat eine Anleitung zu Sicherung von Name-Servern veröffentlicht (englische PDF-Datei).

In der nächsten Woche geht es um weitere Schutzmaßnahmen gegen Angriffe auf TCP/IP und das Erkennen von Systemen anhand ihres TCP/IP-Stacks, das sog. Fingerprinting.

Wenn Sie Fragen oder Themenvorschläge haben, können Sie diese gerne an die angegebene E-Mail-Adresse senden oder im Security-Forum einbringen!

Carsten Eilers

 Alle bisher erschienenen Security-Features (http://entwickler.de/zonen/portale/psecom,id,234,nodeid,.html)



© 2008 Software & Support Verlag GmbH. Vervielfältigung nur mit Genehmigung des Verlags. Fragen?