Ein Ping-of-Death-Angriff (PoD) ist eine Art des DDoS-Angriffs, bei dem ein Angreifer dem Empfängergerät einfache Ping-Requests in Form fragmentierter IP-Pakete sendet, die übergroß oder fehlerhaft sind. Diese Pakete halten sich beim erneuten Zusammensetzen nicht an das IP-Paketformat, was zu Heap-/Speicherfehlern und Systemabstürzen führt.
Ping-Requests über das Internet Control Message Protocol (ICMP) werden zur Überprüfung der Konnektivität und des Zustands von Netzwerkgeräten verwendet. Bei einem berechtigten ICMP-Ping antwortet das Empfängergerät auf einen ICMP-Echo-Request. Die Antwort gibt Auskunft über den aktuellen Zustand des Empfängers. Das Senden eines Ping-Requests mit einem Header, der größer als 65.535 Bytes ist, verstößt gegen das Internet-Protokoll.
Wie funktioniert ein Ping-of-Death-Angriff?
Sobald der Ping-Request (mit seinen fragmentierten IP-Paketen) vom Empfängergerät wieder zusammengesetzt wird, kann dies zu einer IP-Request-Größe von mehr als 65.535 Bytes führen, was einen Systemabsturz zur Folge haben kann. Die Abstürze werden durch Heap-/Speicherfehler verursacht, die auf einen Überlauf von Puffern zurückzuführen sind, die für das Zusammensetzen der IP-Header und des IP-Bodys zugewiesen wurden.
Obwohl PoD ein veralteter DDoS-Angriff ist und ICMP-Flood-Angriffe häufiger eingesetzt werden, kann PoD immer noch ungepatchte Systeme beeinträchtigen. Schwachstellen für PoD wurden zuletzt 2018 in Apple-Geräten aufgedeckt, die einen ungepatchten XNU-Kernel verwendeten. Die Folge war ein Heap-Überlauf, der eine Remote-Code-Ausführung begünstigte.
Wie kann ein Ping-of-Death-Angriff abgemildert werden?
Zur Abmilderung von PoD-Angriffen muss der TCP-Stack des Empfängers so gepatcht werden, dass er die Gesamtgröße der IP-Pakete prüft und genügend Pufferplatz für die erneute Zusammensetzung zuweist. Alternativ dazu kann der IP-Request auf die maximale Größe des zugewiesenen Puffers gekürzt werden. Dadurch wird das Neuschreiben des Requests, das zu einem Heap-Überlauf führen könnte, verhindert. Da eine vollständige Blockierung aller Ping-Requests zum Schutz vor PoD-Angriffen nicht praktikabel ist, besteht ein anderer Ansatz im Herausfiltern fragmentierter Ping-Requests und in der Verarbeitung ausschließlich unfragmentierter Ping-Requests.
Der DDoS-Schutz (DefensePro und Cloud DDoS-Schutzdienst) und die Lösungen für die Applikationsbereitstellung von Radware mildern PoD-Angriffe ab, indem sie fehlerhafte Pakete abfangen, bevor sie den Zielcomputer erreichen. Große ICMP-Pakete, wie etwa bei einem ICMP-Ping-of-Death-Angriff, können mit Hilfe eines Ablehnungsfilters in Kombination mit binären Mustern blockiert werden, mit denen IP-Offsets ungleich Null oder in den IP-Flags gesendete „More-Fragment“-Bits gefiltert werden.
Verwandte Artikel
Weitere Ressourcen