Montag, 1. März 2010


Topthema

Donnerstag, 13. Juli 2006 | Topthema

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

(Link zum Artikel: http://www.entwickler.de/php/kolumnen/030032)

Während bei einem DoS-Angriff der Angriff von einem einzelnen Rechner ausgeht, nutzt der Angreifer bei einem Distributed Denial of Service (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 tiefgreifende 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 an 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 About Security #65 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.

N E U ! Security aktuell
Täglich aktuelle Security-Infos!

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 Nameserver 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 Nameserver 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 Nameservern 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 Nameservern, die rekursive Anfragen von beliebigen Clients entgegennehmen (so genannte Open Resolver), gesendet. Für das Senden der Anfragen kann z.B. ein Botnet verwendet werden. Die Nameserver 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 Nameserver 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 Nameserver bedeutet das z.B., sofern möglich Rekursion zu deaktivieren oder rekursive Anfragen nur aus dem eigenen Netz entgegenzunehmen. Ein nichtrekursiver Nameserver ist auch nicht anfällig für Cache Poisoning. Das CERT Coordination Center der Carnegie Mellon University hat eine Anleitung zu Sicherung von Nameservern veröffentlicht (englische PDF-Datei).

In der nächsten Folge geht es um weitere Schutzmaßnahmen gegen Angriffe auf TCP/IP und das Erkennen von Systemen anhand ihres TCP/IP-Stacks, das so genannte 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

About Security – Übersicht zum aktuellen Thema "Angriffe auf TCP/IP"

Kommentare

Folgende Links könnten Sie auch interessieren

  • Internet Forensics  [09.02.2007]
    [http://entwickler.de/zonen/portale/psecom,id,102,buch,599,.html]
  • FreeBSD de Luxe  [04.12.2003]
    [http://entwickler.de/zonen/portale/psecom,id,102,buch,266,.html]
  • Samba-3 By Example  [04.07.2005]
    [http://entwickler.de/zonen/portale/psecom,id,102,buch,416,.html]
  • Frankophile Enterprise-Power  [20.06.2005]
    [http://entwickler.de/zonen/portale/psecom,id,101,online,682,.html]
  • LDAP für Java-Entwickler  [01.12.2005]
    [http://entwickler.de/zonen/portale/psecom,id,101,online,1064,.html]