Lücke im System

[Erratum] "Faszinierende Schwachstelle" im Kernel 2.6.30

[Erratum] "Faszinierende Schwachstelle" im Kernel 2.6.30

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

Start-Job behindert Bootvorgang, Suse 13.2, KDE,
Wimpy *, 20.02.2015 10:32, 4 Antworten
Beim Bootvorgang ist ein Timeout von 1 Min 30 Sec. weil eine Partition sdb1 gesucht und nicht gef...
Konfiguration RAID 1 mit 2 SSDs: Performance?
Markus Mertens, 16.02.2015 10:02, 4 Antworten
Hallo! Ich möchte bei einer Workstation (2x Xeon E5-2687Wv3, 256GB RAM) 2 SATA-SSDs (512GB) al...
Treiber für Canon Laserbase MF5650
Sven Bremer, 10.02.2015 09:46, 1 Antworten
Hallo ich weiß mittlerweile das Canon nicht der beste Drucker für ein Linux System ist. Trotzd...
Linux und W7 im Netz finden sich nicht
Oliver Zoffi, 06.02.2015 11:47, 3 Antworten
Hallo! Ich verwende 2 PCs, 1x mit W7prof 64 Bit und einmal mit Linux Mint 17 64 Bit, welches ich...
Rootpasswort
Jutta Naumann, 29.01.2015 09:14, 1 Antworten
Ich habe OpenSuse 13.2 installiert und leider nur das Systempasswort eingerichtet. Um Änderungen,...