Lücken im Kernel: So brechen Hacker in jeden Rechner ein

Ende Juli zogen die Google-Sicherheitsforscher Tavis „Taviso“ Ormandy und Julien Tinnes auf der Black-Hat-Konferenz in Las Vegas Bilanz zum Thema Kernel-Hacking. Ihr Fazit spiegelt sich bereits im Titel des Vortrags wieder: „There’s a party at Ring0 and you’re invited“ (deutsch: Im Ring 0 ist eine Party und Ihr seid eingeladen).

Unter "Ring 0" versteht man in der x86-Architektur die höchste Privilegienstufe, die alle Befehle ausführen kann und Zugriff auf den gesamten Speicher hat, da sich im Ring 0 alle Speichertabellen verändern lassen. Im Ring 0 laufen normalerweise die Kernel der Betriebssysteme, während Benutzerprozesse im Ring 3 ausgeführt werden, der zahlreiche Befehle verbietet, etwa Zugang zum Hauptspeicher anderer Prozesse oder Hardware-I/O.

Ormandy ist bekannt dafür, bei Sicherheitslücken kein Blatt vor den Mund zu nehmen. Im Juni löste er einen heftigen, bis heute andauernden Streit zwischen Google und Microsoft darüber aus, wie mit entdeckten, aber bislang ungepatchten Sicherheitslücken umzugehen ist.

Microsoft erwartet, dass sich Sicherheitsforscher mit dem Hersteller in Verbindung setzen und keine Informationen an die Öffentlichkeit geben, da ansonsten Cyberkriminelle damit beginnen, die Lücke aktiv auszunutzen. Google will eine Obergrenze von 60 Tagen festsetzen, damit der Druck auf den Hersteller erhöht wird. Nach Ablauf der Frist will Google Details jeder entdeckten Lücke veröffentlichen.

Ormandy hatte 2009 eine Lücke in der Windows-Funktion "Hilfe und Support" entdeckt und an Microsoft gemeldet. In Redmond schien sich jedoch niemand darum zu kümmern. Da nach über einem Jahr im Juni 2010 noch kein Patch vorlag, veröffentlichte er die Details der Lücke in der Mailingliste "Full Disclosure".

Ähnlich gingen Ormandy und Tinnes auf ihrem Black-Hat-Vortrag vor. Sie zeigten zahlreiche Möglichkeiten auf, wie sich nahezu jedermann Zugang zum Kernel eines Betriebssystems verschaffen kann – sowohl bei Windows als auch bei Linux.

Grundsätzlich unterscheiden die beiden Forscher lokale und Netzwerkangriffe. Ein lokaler Angriff setzt voraus, dass ein Benutzer einen Shell-Zugang zu einem Rechner hat, ohne dabei einen privilegierten Account wie root (Unix) oder Administrator (Windows) zu besitzen. Wer ein Superuser-Konto mit Shell-Zugang besitzt, kann ohnehin Kernelmode-Code ausführen.

Die Bezeichnung „lokaler Angriff“ ist allerdings nicht ganz korrekt. Der Shell-Zugang kann natürlich auch remote erfolgen, etwa per SSH, Remote Desktop oder VNC.

Ein Netzwerk-Angriff, der Zugang zum Kernel eines Rechners verschafft, ist wesentlich gefährlicher. Wenn eine Lücke einen Netzwerkangriff erlaubt, kann sich eventuell jeder einen Zugang zum Kernel eines Rechners verschaffen, der als öffentlicher Webserver fungiert.

Page: 1 2 3 4

ZDNet.de Redaktion

Recent Posts

Apple meldet Rekordumsatz im vierten Fiskalquartal

Die Einnahmen klettern auf fast 95 Milliarden Dollar. Allerdings belastet der Steuerstreit mit der EU…

2 Tagen ago

Microsoft steigert Umsatz und Gewinn im ersten Fiskalquartal

Das stärkste Wachstum verbucht die Cloud-Sparte. Microsoft verpasst bei der Umsatzprognose für das laufende Quartal…

2 Tagen ago

Bezahlkarten: Infineon verspricht weniger Plastikmüll

Ein Coil-on-Module-Package integriert Chip und Antenne, was den Kartenkörper fast vollständig recycelbar machen soll.

3 Tagen ago

Firefox 132 schließt elf Sicherheitslücken

Mindestens eine Anfälligkeit erlaubt das Einschleusen von Schadcode. Außerdem erweitern die Entwickler den Support für…

3 Tagen ago

Telekom nennt Termin für 2G-Ende

Zum 30. Juni 2028 soll das 2G-Netz komplett abgeschaltet werden und den Weg für schnellere…

3 Tagen ago

Alphabet übertrifft die Erwartungen im dritten Quartal

Gewinn und Umsatz legen deutlich zu. Zum Wachstum tragen auch die Sparten Cloud und Abonnements…

3 Tagen ago