[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

Bash awk Verständnis-Frage
Josef Federl, 22.07.2017 17:46, 2 Antworten
#!/bin/bash # Skriptdateiname = test.sh spaltennummer=10 wert=zehner awk '{ $'$spaltennummer'...
Bash - verschachtelte Variablenersetzung, das geht doch eleganter als meine Lösung?
Josef Federl, 18.07.2017 20:24, 2 Antworten
#!/bin/bash #Ziel des Skriptes wird sein die ID zu extrahieren hier nur als Consolentest: root@...
Speicherplatzfreigabe mit "sudo apt-get clean" scheitert
Siegfried Böttcher, 16.07.2017 21:16, 2 Antworten
Speicherplatzfreigabe mit "sudo apt-get clean" scheitert, weil aus mir unerfindlichen Gründen im...
Möchte Zattoo vom PC am Fernsehgerät sehen können
Ilona Nikoui, 15.07.2017 18:25, 3 Antworten
Hallo, ich habe mein Fernsehgerät, ein LG 26LE3300 mit dem PC verbunden per HDMI Kabel, wie empfo...
TUXEDO und Hardwareauswahl , fragwürdig / Kritik
Josef Federl, 11.07.2017 12:44, 7 Antworten
Auf tuxedocomputers.com steht: "....Aber wir können auch Linux und das so, dass "einfach" alles...