[Erratum] "Faszinierende Schwachstelle" im Kernel 2.6.30

[Erratum] "Faszinierende Schwachstelle" im Kernel 2.6.30

Lücke im System

Britta Wülfing
21.07.2009 Ein kürzlich veröffentlichter Root-Exploit attackiert neuere Linux-Versionen und umgeht dabei auch Sicherheits-Software wie SELinux oder AppArmor. Eine Lösung ist schon gefunden.

„Eine neue, faszinierende Kernel-Schwachstelle“, übertitelt Bogdan Zdrnja auf der Webseite des Internet Storm Center seinen Eintrag zu dem Root-Exploit. Veröffentlicht wurde der Exploit-Code von Brad Spengler, selbst Entwickler der Open-Source-Security-Applikation grsecurity. Zdrnja erläutert den Grund für seine Faszination: „Weil ein Quellcode-Audit niemals diese Schwachstelle finden würde (nun ja, tatsächlich ist es möglich, aber ich versichere, dass beinahe jeder ihn übersehen würde).“ Es sollen nur Kernelversionen ab 2.6.30 betroffen sein, der Schadcode funktioniert auf 32-Bit ebenso wie auf 64-Bit-Versionen, wie Spengler schreibt.

Die Lücke nutzt eine Schwachstelle in der Net/Tun-Implementierung. Obwohl der Code korrekt prüft, dass eine bestimmte Variable nicht "NULL" ist, entfernt der Compiler während Optimierungsläufen die Zeilen, die für diese Prüfung zuständig sind. Wenn die Variable auf Null zeigt, versucht der Kernel auf verbotene Speicherteile zuzugreifen, sodass ein Angreifer Schadcode einschleusen könnte. Zdrnja vom Internet Storm Center beschreibt die „relativ einfache“ Lösung: „Die Prüfung muss passieren, bevor der Wert in die Struktur geschrieben wird.“

Damit führt der Compiler eine Schwachstelle in das Binary ein, die im Quelltext nicht vorhanden war. Dies veranlasst den Security-Experten Zdrnja zu dem Fazit: „Faszinierende Forschung, die wieder zeigt, wie Sicherheit von jeder Schicht abhängt, und wie auch sehr teure Quellcode-Prüfung im Ergebnis unentdeckte Schwachstellen haben können.“

Erratum:
Wir hatten ursprünglich geschrieben, Kernel 2.6.30 sei für RHEL 5 ausgeliefert worden. Das stimmt nicht. Richtig ist vielmehr: Der Exploit funktioniert für Kernel 2.6.30 und neuer sowie für den 2.6.18-Kernel in RHEL 5. Der Quellcode des Exploits ist dafür mit unterschiedlichen Optionen zu kompilieren. Wir bedauern den Irrtum.

Ähnliche Artikel

Kommentare

Aktuelle Fragen

Anfänger Frage
Klaus Müller, 24.05.2017 14:25, 2 Antworten
Hallo erstmal. Habe von linux nicht so viel erfahrung müsste aber mal ne doofe frage stellen. A...
Knoppix-Live-CD (8.0 LU-Edition) im Uefiboot?
Thomas Weiss, 26.04.2017 20:38, 3 Antworten
Hallo, Da mein Rechner unter Windows 8.1/64Bit ein Soundproblem hat und ich abklären wollte, o...
Grub2 reparieren
Brain Stuff, 26.04.2017 02:04, 5 Antworten
Ein Windows Update hat mir Grub zerschossen ... der Computer startet nicht mehr mit Grub, sondern...
Linux open suse 2,8
Wolfgang Gerhard Zeidler, 18.04.2017 09:17, 2 Antworten
Hallo.bitte um Hilfe bei. Code fuer den Rescue-login open suse2.8 Mfg Yvo
grep und sed , gleicher Regulärer Ausdruck , sed mit falschem Ergebnis.
Josef Federl, 15.04.2017 00:23, 1 Antworten
Daten: dlfkjgkldgjldfgl55.55klsdjfl jfjfjfj8.22fdgddfg {"id":"1","name":"Phase L1","unit":"A",...