ICMP-Pakete bringen TCP-Verbindungen aus dem Tritt
Ein Angreifer kann mit bestimmten ICMP-Paketen TCP/IP-Verbindungen unterbrechen oder zurĂĽcksetzen. Betroffen sind oder waren Cisco, Microsoft, Juniper, Red Hat Enterprise Linux, IBM AIX, SCO, WatchGuard und weitere Hersteller.
Ein Angreifer kann mit bestimmten ICMP-Paketen TCP/IP-Verbindungen unterbrechen oder zurĂĽcksetzen. Betroffen sind oder waren Cisco, Microsoft, Juniper, Red Hat Enterprise Linux, IBM AIX, SCO, WatchGuard und weitere Hersteller.
Am Internet angeschlossene Rechner benutzen das ICMP-Protokoll (Internet Control Message Protocol), um Fehler- und Informationsmeldungen untereinander auszutauschen, die ihre Verbindungen betreffen. So tauschen zum Beispiel Router per ICMP Fehlermeldungen aus, um die MTU (Maximum Transfer Unit) herabzusetzen.
Fernando Gont publizierte bereits im Dezember 2004 einen RFC-Entwurf, der beschreibt, wie ein Angreifer ICMP gegen TCP einsetzt und was der Verteidiger dagegen tun kann, um die Auswirkungen der Angriffe zu minimieren. Der Entwurf beschreibt drei ICMP-Angriffsarten: ICMP-"hard"-Fehlermeldungen, ICMP-"fragmentation needed and Don't Fragment (DF) bit set"-Meldungen (als Path-MTU-Discovery-Angriffe bekannt) und ICMP-"source quench"-Meldungen. Mit diesen Angriffen kann jemand TCP-Verbindungen stoppen, den Durchsatz einer existierenden TCP-Verbindung heruntersetzen oder die CPU- und Speicher-Ressourcen der Rechner aufbrauchen. Der Angreifer muss fĂĽr einen erfolgreichen Angriff allerdings die Quell- und Zieladressen und Ports der TCP-Verbindung wissen und spoofen.
Als besonders knifflig könnte sich das Problem herausstellen, falls ein Angreifer es schafft, die Verbindungen zwischen BGP-Core-Routern im Internet zu stören. Diese bauen langzeitige, persistente TCP-Verbindungen untereinander auf, die sie bei einem Reset der Verbindungen neu aufbauen müssten. Allerdings aktualisiert der Router erst einmal seine Routing-Tabelle -- und das kann dauern. In der Folge kann das Routing in Teilen des Internet für kurze Zeit zusammenbrechen. Glücklicherweise dürfte dies aber unwahrscheinlich sein, da BGP-Router üblicherweise nur ICMP-Befehle von bekannten Routern annehmen und verarbeiten sollten.
Als erfolgreiche Verteidigung gegen diese Angriffe hilft natürlich, diese ICMP-Meldungen (ICMP Type 3 Codes 2, 3 und 4, ICMP Type 4, sowie beim Einsatz von IPv6 auch ICMP Version 6 Pakete) am Rechner selbst oder am Gateway abzufangen und nicht zu verarbeiten und den Path-MTU-Discovery-Mechanismus auszuschalten. Das dürfte sich aber für Anwender, die darauf angewiesen sind, als etwas problematisch herausstellen. Alternativ müssten sie Updates auf den Geräten einspielen. Microsoft löste diese Probleme bereits am gestrigen Patch-Day mit MS05-019. Cisco beschäftigte sich damit in einem 50 Seiten langen Advisory. Weitere Advisories und Updates dürften folgen.
Siehe dazu auch: (eck)
- ICMP attacks against TCP Draft der Internet Engineering Task Force
- Multiple TCP/IP implementations do not adequately validate ICMP error messages vom US-CERT
- Advisory vom National Infrastructure Security Co-ordination Centre
- Advisory von Cisco
- Advisory von Sun
- Advisory von Microsoft