Lücke im Linux-Kernel erlaubt Root-Zugriff [Update]

Eine Null-Pointer-Dereferenzierung im Linux-Kernel lässt sich ausnutzen, um an Root-Rechte auf einem System zu gelangen. Der Fehler ist im RC6 der Version 2.6.32 behoben. Einige Distributionen verhindern jedoch auch ohne Patch die Wirksamkeit von Exploits.

In Pocket speichern vorlesen Druckansicht 467 Kommentare lesen
Lesezeit: 2 Min.
Von
  • Daniel Bachfeld

Eine Null-Pointer-Dereferenzierung im Linux-Kernel lässt sich ausnutzen, um als normaler Anwender auf einem System an Root-Rechte zu gelangen. Laut Bericht steckt die Lücke in pipe.c und tritt unter bestimmten Umständen bei der Verwendung der Funktionen pipe_read_open(), pipe_write_open() pipe_rdwr_open() auf, wenn ein Mutex (mutual exclusion) zu früh freigegeben wird – also eine klassische Race Condition. Der Fehler ist aber bislang erst im Release Candidate 6 der kommenden Version 2.6.32 beseitigt .

Er lässt sich aber, wie bei den vorherigen Null-Pointer-Dereferenzierungen im Linux-Kernel, nur dann ausnutzen, wenn die Kernel-Systemvariable mmap_min_addr auf 0 gesetzt ist. mmap_min_addr legt die niedrigste virtuelle Adresse fest, auf die ein Prozess mappen darf. Ist sie größer als 0, funktionieren Exploits nicht, bei denen ein als Null dereferenzierter Pointer dorthin zeigt. Allerdings funktionieren dann auch einige Open-Source-Anwendungen wie Wine und dosemu nicht mehr, weshalb manche Distributoren den Wert standardmäßig auf 0 setzen, darunter Red Hat und Debian. Red Hat hat aber bereits aktualisierte Pakete herausgegeben, um die Lücke zu schließen. Debian hält eine Anleitung bereit, wie man die Variable ändert. Unter Ubuntu ist mmap_min_addr standardmäßig auf 65535 gesetzt, womit Exploits nicht funktionieren. Durch die Installation weiterer Anwendungen kann der Wert jedoch auf 0 gesetzt werden.

Auf der Linux-Kernel-Mailingliste weist zwar offiziell der Entwickler Earl Chew am 14. Oktober als erster auf den Fehler hin, der hinter dem grsecurity-Projekt stehende Entwickler Brad Spengler will sie aber ebenfalls Mitte Oktober entdeckt haben. Gegenüber britischen Medien gab Spengler an, vor zwei Wochen sogar schon einen Exploit entwickelt zu haben. Spengler hatte hatte bereits für die zuletzt entdeckten Null-Pointer-Dereferenzierungen im Linux-Kernel Exploits veröffentlicht.

Update: Auf Anfrage von heise Security erklärte Brad Spengler, dass er seinen Exploit zum Ausnutzen der Lücke möglicherweise noch heute veröffentlichen wird.

Siehe dazu auch:

(dab)