2. Background (Hintergrund)
2. Background (Hintergrund)
Ein vereinfachtes Diagramm des TCP SYN Flooding-Problems wird unten dargestellt:
204.69.207.0/24
host <----- router <--- Internet <----- router <-- attacker
TCP/SYN
<---------------------------------------------
Source: 192.168.0.4/32
SYN/ACK
no route
TCP/SYN
<---------------------------------------------
Source: 10.0.0.13/32
SYN/ACK
no route
TCP/SYN
<---------------------------------------------
Source: 172.16.0.2/32
SYN/ACK
no route
[etc.]
Annahmen:
-
Der "host" ist die Zielmaschine.
-
Der Angreifer befindet sich innerhalb des "gültigen" Präfixes 204.69.207.0/24.
-
Der Angreifer startet den Angriff unter Verwendung zufällig wechselnder Quelladressen; in diesem Beispiel werden die Quelladressen als von innerhalb [4] dargestellt, die im Allgemeinen nicht in den globalen Internet-Routing-Tabellen vorhanden und daher unerreichbar sind. Jedoch könnte jedes unerreichbare Präfix verwendet werden, um diese Angriffsmethode zu perpetuieren.
Ebenfalls erwähnenswert ist ein Fall, in dem die Quelladresse gefälscht ist, um so auszusehen, als ob sie aus einem anderen legitimen Netzwerk stammt, das in den globalen Routing-Tabellen erscheint. Zum Beispiel könnte ein Angreifer, der eine gültige Netzwerkadresse verwendet, Chaos anrichten, indem er den Angriff so erscheinen lässt, als käme er von einer Organisation, die den Angriff tatsächlich nicht initiiert hat und völlig unschuldig war. In solchen Fällen könnte der Administrator eines angegriffenen Systems geneigt sein, den gesamten Verkehr von der scheinbaren Angriffsquelle zu filtern. Das Hinzufügen eines solchen Filters würde dann zu einem Denial of Service für legitime, nicht-feindliche Endsysteme führen. In diesem Fall wird der Administrator des angegriffenen Systems unwissentlich zum Komplizen des Angreifers.
Die Angelegenheit wird weiter verkompliziert, da TCP SYN Flood-Angriffe dazu führen, dass SYN-ACK-Pakete an einen oder mehrere Hosts gesendet werden, die keine Beteiligung am Angriff haben, aber zu sekundären Opfern werden. Dies ermöglicht es dem Angreifer, zwei oder mehr Systeme gleichzeitig zu missbrauchen.
Ähnliche Angriffe wurden mit UDP- und ICMP-Flooding versucht. Der erstere Angriff (UDP Flooding) verwendet gefälschte Pakete, um zu versuchen, den chargen-UDP-Dienst mit dem echo-UDP-Dienst an einer anderen Site zu verbinden. Systemadministratoren sollten NIEMALS UDP-Pakete, die für System-Diagnose-Ports bestimmt sind, von außerhalb ihrer administrativen Domäne erlauben, ihre Systeme zu erreichen. Der letztere Angriff (ICMP Flooding) nutzt eine heimtückische Funktion in der IP-Subnetz-Broadcast-Replikationsmechanik. Dieser Angriff basiert auf einem Router, der ein großes Multi-Access-Broadcast-Netzwerk bedient, um eine IP-Broadcast-Adresse (wie eine für 10.255.255.255 bestimmte) in einen Layer-2-Broadcast-Frame (für Ethernet, FF:FF:FF:FF:FF:FF) zu rahmen. Ethernet-NIC-Hardware (MAC-Layer-Hardware, spezifisch) wird nur auf eine ausgewählte Anzahl von Adressen im normalen Betrieb hören. Die eine MAC-Adresse, die alle Geräte im normalen Betrieb gemeinsam haben, ist der Media-Broadcast, oder FF:FF:FF:FF:FF:FF. In diesem Fall nimmt ein Gerät das Paket und sendet einen Interrupt zur Verarbeitung. Daher wird eine Flut dieser Broadcast-Frames alle verfügbaren Ressourcen auf einem Endsystem verbrauchen [9]. Es ist vielleicht klug, dass Systemadministratoren in Betracht ziehen sollten sicherzustellen, dass ihre Border-Router nicht erlauben, dass gerichtete Broadcast-Pakete durch ihre Router als Standard weitergeleitet werden.
Wenn ein TCP SYN-Angriff unter Verwendung einer unerreichbaren Quelladresse gestartet wird, versucht der Zielhost, Ressourcen zu reservieren, während er auf eine Antwort wartet. Der Angreifer ändert wiederholt die gefälschte Quelladresse bei jedem neuen gesendeten Paket und erschöpft so zusätzliche Host-Ressourcen.
Alternativ, wenn der Angreifer die gültige Hostadresse einer anderen Person als Quelladresse verwendet, sendet das angegriffene System eine große Anzahl von SYN/ACK-Paketen an das, was es für den Ursprung der Verbindungsaufbau-Sequenz hält. Auf diese Weise fügt der Angreifer zwei Systemen Schaden zu: dem Zielsystem sowie dem System, das tatsächlich die gespooften Adresse im globalen Routing-System verwendet.
Das Ergebnis beider Angriffsmethoden ist extrem verschlechterte Leistung oder schlimmer, ein Systemabsturz.
Als Reaktion auf diese Bedrohung haben die meisten Betriebssystemhersteller ihre Software modifiziert, um den angegriffenen Servern zu ermöglichen, Angriffe mit sehr hohen Verbindungsversuchsraten zu überstehen. Dies ist ein willkommener und notwendiger Teil der Lösung des Problems. Ingress-Filterung wird Zeit brauchen, um allgegenwärtig implementiert zu werden und vollständig wirksam zu sein, aber die Erweiterungen der Betriebssysteme können schnell implementiert werden. Diese Kombination sollte sich gegen Source Address Spoofing (Quelladressfälschung) als effektiv erweisen. Siehe [1] für Informationen zu Software-Upgrades von Anbietern und Plattformen.