TCP-Sicherheitslücke: Linux-Rechner übers Internet abschießen
Im Linux-Kernel und in FreeBSD sind mehrere Fehler bei der Verarbeitung von TCP-Paketen gefunden worden. Eine Sicherheitslücke in der Funktion Selective Acknowledgement (SACK) kann von Angreifern dazu genutzt werden, bei Linux einen Kernelabsturz zu verursachen.

Entwickler von Netflix haben mehrere Fehler im Linux-Kernel und in FreeBSD gefunden, mit denen man ein System durch das Senden spezieller Netzwerkpakete zum Absturz bringen oder stark verlangsamen kann. Die Probleme befinden sich in der TCP-Funktion Selective Acknowledgement (SACK).
Die SACK-Funktion verbessert die Performance von TCP-Netzwerkverbindungen bei Paketverlusten. Wenn ein TCP-Paket fragmentiert wird und dabei nur ein Teil der Segmente beim Empfänger ankommt, kann dieser vom Sender eine Neuübertragung einzelner Segmente anfordern. Damit kann vermieden werden, das gesamte TCP-Paket neu anzufordern.
Zu viele Segmente führen zu Kernelabsturz
Die kritischste der gefundenen Lücken ermöglicht es, den Linux-Kernel übers Netz lahmzulegen. Im Linux-Kernel werden Segmente vor dem Versenden in einem speziellen Puffer vorgehalten, der hat aber nur Platz für 17 Pakete. Das reicht in aller Regel aus, allerdings lässt sich mit Hilfe von SACK-Paketen eine Situation konstruieren, in der dieser Puffer voll ist.
Das löst im Kernel die Funktion BUG_ON aus, die aufgerufen wird, wenn eine eigentlich nicht vorgesehene Situation auftritt. Die Folge: Der Kernel stürzt ab. Mehr kann ein Angreifer allerdings auch nicht machen. Die Funktion führt einen sicheren Absturz aus, es wird kein Speicher überschrieben und es treten keine undefinierten Zustände auf. Solche Lücken, mit denen sich ein System übers Netz zum Absturz bringen lässt, werden manchmal auch als Ping of Death bezeichnet.
FreeBSD-Lücke weniger schlimm
Die weiteren von Netflix gefundenen Lücken, von denen eine auch FreeBSD betrifft, führen nicht zu Abstürzen, sie können aber ein System stark verlangsamen. Sie sind daher deutlich weniger kritisch.
Es gibt bislang keinen öffentlich verfügbaren Exploit, mit dem sich die Lücken ausnutzen lassen. Man sollte allerdings davon ausgehen, dass bald entsprechende Exploits auftauchen und dann auch genutzt werden.
Linux-Nutzer sollten schnellstmöglich ihre Kernel-Pakete aktualisieren und ihre Systeme neu starten. Als temporäre Lösung kann man SACK auch über das Proc-Interface deaktivieren, /proc/sys/net/ipv4/tcp_sack muss dafür auf 0 gesetzt werden. Natürlich führt das dazu, dass Verbindungen bei Paketverlusten verlangsamt werden. Alternativ ist es auch möglich, die Angriffe zu filtern, entsprechende Filterregeln hat Netflix bereitgestellt.
Die aktuelle stabile Version des Linux-Kernels 5.1.11 enthält die Korrekturen für die gefundenen Fehler bereits. Auch für zahlreiche ältere Kernel-Versionszweige sind korrigierte Versionen veröffentlicht worden. Von den gängigen Linux-Distributionen stehen ebenfalls Updates bereit. Red Hat hat weitere Details zu den Sicherheitslücken in einem Blogpost erläutert.
Für FreeBSD steht bislang kein Update bereit. Allerdings ist die Lücke dort auch deutlich weniger kritisch, da kein Absturz auftreten kann.
Problematisch könnte die Lücke für Android-Telefone und für zahlreiche IoT-Geräte werden. Denn hier ist es oft so, dass vom Hersteller keine Aktualisierungen bereitgestellt werden.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
Gerüchteweise gibt es auch WiFi Netze mit öffentlichen IPs, sogar von Providern im...
wäre ich mir nich so sicher. microsoft hat sich den netzwerkstack von bsd abgekuckt :-)
und was soll das bringen? netfilter kommt hier leider nicht als erstes in der...
ja avm setzt auf linux und verstößt auch weiterhin gegen die gpl