Freitag, 5. Dezember 2008

News

präsentiert von: entwickler.com
Donnerstag, 8. Juni 2006

About Security #58: Angriffe auf TCP/IP — DoS

Für Denial-of-Service-Angriffe (DoS) auf TCP/IP können Schwächen in den Protokollen oder Implementierungsfehler in den Systemen ausgenutzt werden. Die einfachste Möglichkeit eines DoS-Angriffs ist das Senden einer großen Anzahl von SYN-Paketen. Diese werden vom Opfer mit einem SYN/ACK-Paket beantwortet und eine TCP-Verbindung wird reserviert. Der Angreifer antwortet auf die SYN/ACK-Pakete nicht, sodass der 3-Wege-Handshake nicht vollendet wird. Die dadurch erzeugten halboffenen TCP-Verbindungen belegen beim Opfer Ressourcen, sodass nach einiger Zeit keine weiteren Verbindungen mehr angenommen werden können. Ein derartiger Angriff wird SYN-Flooding genannt.

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

UDP Flooding

Ein weiterer Flooding-Angriff arbeitet mit UDP-Paketen. Das verbindungslose Protokoll UDP besitzt keine Möglichkeit, den Empfang eines gesendeten Pakets zu kontrollieren. Während TCP in der Lage ist, auf eine verzögerte Empfangsbestätigung mit dem Senken der Sendehäufigkeit zu reagieren, sendet UDP unverändert weiter. Da UDP-Pakete Vorrang vor TCP-Paketen haben, belegt der UDP-Verkehr nach einiger Zeit die gesamte Bandbreite einer Verbindung und unterbindet damit den TCP-Verkehr.

'chargen-Angriff'

Das einfachste Beispiel für einen solchen UDP-DoS-Angriff ist ein 'chargen-Angriff'. Dazu wird der Zeichen erzeugende Dienst chargen eines Rechners mit dem die empfangenen Daten reflektierenden Dienst echo eines anderen Rechners verbunden. Der Angreifer sendet UDP-Pakete zum chargen-Port (19) seines Opfers und gibt als Quelle den echo-Port (7) und eine ggf. gefälschte Quelladresse an. Der so erzeugte 'UDP Packet Storm' kann bei geeigneter Wahl der IP-Adressen ein ganzes Netzwerk lahmlegen.

Smurf- und Fraggle-Angriffe

Ein weiterer DoS-Angriff ist über das Protokoll ICMP möglich. Wird ein Paket an eine Broadcast-Adresse geschickt, wird es an jeden Rechner im betreffenden Netzwerk weitergeleitet. Ein Angreifer kann eine Folge von ICMP-Echo-Paketen (ping) mit der IP-Adresse des gewünschten Opfers als Quelle an die Broadcast-Adresse des Netzwerks des Opfers senden. Alle Rechner im betroffenen Netzwerk antworten darauf mit einem ICMP-ECHO-REPLY-Paket an das Opfer, das davon überflutet wird. Der Broadcast dient dabei als Multiplikator: Wenn der Angreifer z.B. 1.000 Pakete/Sekunde an die Broadcast-Adresse sendet, auf die 100 Rechner antworten, empfängt das Opfer 100.000 Pakete/Sekunde. Ein solcher Angriff wird nach dem zum Angriff verwendeten Programm Smurf-Angriff genannt.

Das Verfahren wurde unter dem Namen Fraggle-Angriff auf das Protokoll UDP übertragen. Fraggle verwendet statt ICMP-  UDP-Echo-Pakete, das Programm wurde lediglich für die Verwendung des Protokolls UDP umgeschrieben.

Smurf- und Fraggle-Angriffe können z.B. für DoS-Angriffe auf Intrusion-Detection- oder -Prevention-Systeme eingesetzt werden, da der Aufwand für den Angreifer relativ gering ist (s. About Security #46). Die Angriffe können verhindert werden, indem Broadcast-Pakete nicht in das lokale Netz weitergeleitet werden.

Ausnutzung von Implementierungsfehlern
'Ping of Death'
About Security: Die komplette Serie

Beim 'Ping of Death'-Angriff wurde eine Schwachstelle in der Implementierung vieler TCP/IP-Stacks ausgenutzt. IP-Pakete können einschließlich Header bis zu 65.535 Bytes lang sein. Pakete, die größer als die maximale Paketgröße des verwendeten Transportmediums sind, werden in Fragmente zerlegt, die vom Empfänger zusammengesetzt werden. Dabei bestimmt ein Offset-Wert die Position der einzelnen Fragmente. Wurde für das letzte Fragment ein Offset-Wert angegeben, der zusammen mit der Fragmentgröße einen größeren Wert als 65.535 Bytes ergab, kam es zu einem Pufferüberlauf. Der Name 'Ping of Death' entstand aus der Tatsache, dass die Schwachstelle meist über ICMP-Echo-Pakete (ping) ausgenutzt wurde.

Teardrop

Ähnlich arbeitet der Teardrop-Angriff: Die Fragmente wurden so erzeugt, dass sie sich überlappen, d.h. das zweite Fragment im ersten enthalten ist. Beim Zusammensetzen der Fragmente erkannten manche Systeme diesen Sonderfall nicht, und es kam zu einem Absturz.

Land

Auch der Land-Angriff nutzt einen Implementierungsfehler, ist aber deutlich komplexer. Der Angreifer schickt ein SYN-Paket, bei dem Quell- und Zieladresse sowie -port identisch sind, an einen offenen Port des Opfers. Dieses antwortet mit einem SYN/ACK-Paket an die Quelle (d.h. sich selbst). Durch den Implementierungsfehler wurde dieses SYN/ACK-Paket als SYN-Paket betrachtet und erneut mit einem SYN/ACK-Paket beantwortet. Die dadurch entstehende Endlosschleife legte das System lahm.

Sowohl 'Ping of Death'- als auch Teardrop-Angriffe funktionieren heutzutage nicht mehr, da die Implementierungen der TCP/IP-Stacks entsprechend angepasst wurden. Einige Versionen für Windows waren 2005 noch durch Land-Angriffe verwundbar, die Schwachstelle wurde von Microsoft mit dem Security Bulletin MS05-019 behoben.

In der nächsten Folge wird das Beispiel aus About Security #57 zum Abschluss gebracht und das Hijacking von TCP/IP-Verbindungen beschrieben.

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

Ihre Meinung ist uns wichtig!
Mobile Computing Heute & Morgen!
Nehmen Sie an unserer Umfrage zum Thema Mobile Computing in Deutschland teil und nutzen Sie die Chance eine Casio Exilim EX-Z1050-Digitalkamera zu gewinnen!
dot.net Code Camp C# 3.5

Konferenzen

BASTA! Spring 2009

BASTA! Spring 2009

23.-27. Februar 2009
Maritim Rhein-Main Hotel Wissenschaftsstadt Darmstadt

BASTA! Italia 2009

BASTA! Italia 2009

16.-18. März 2009
Holiday Inn EUR Parco dei Medici, Roma

PHPCon Italia 2009

PHPCon Italia 2009

18.-20. März 2009
Holiday Inn EUR Parco dei Medici, Roma

JAX 09

JAX 09

20.-24. April 2009
Rheingoldhalle Mainz

webinale 09

webinale 09

25.-27. Mai 2009
Berlin

Werbung
Top-Jobs

Software & Support Verlag GmbH

Volontär (w/m) Redaktion, Vollzeit

Endress+Hauser GmbH+Co. KG

Entwickler Datenbanksysteme (m/w)

Software & Support Verlag GmbH

Lektor (m/w), Vollzeit

Software & Support Verlag GmbH

Redakteur (m/w), Vollzeit

Signsoft GmbH

Java-Entwickler (m/w)
JAX 09

Magazine

Entwickler Magazin - Enterprise Technologies & Business Solutions

Entwickler Magazin

Enterprise Technologies & Business Solutions

dot.net magazin - die unabhängige Quelle für .NET-Technologien

dot.net magazin

Die Quelle für .NET-Technologien

Eclipse Magazin

Eclipse Magazin

Weltweit erstes Magazin für Eclipse-Entwickler

Java Magazin - Internet & Enterprise Technology

Java Magazin

Internet & Enterprise Technology

CREATE OR DIE - Ein Leben für die Kreativität

CREATE OR DIE

Ein Leben für die Kreativität

Business Technology - Management Magazin

Business Technology

Management Magazin

PHP Magazin - Professional PHP Development

PHP Magazin

Professional PHP Development

Bücher


hosted by HostEurope