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

Trojaner-Angriffe verdreifacht

Kaspersky meldet starke Zunahme mobiler Banking-Trojaner. Insgesamt 33,3 Millionen Angriffe auf mobile Nutzer im Jahr…

16 Stunden ago

Höherer Durchsatz in Glasfasernetzen

Optische Schalter mit Flüssigkristallspiegeln sollen die Datenpakete so stark verkleinern, dass mehr Daten durchs Netz…

17 Stunden ago

Internet-Kriminalität: 6 von 10 Nutzern betroffen

Jahresbilanz: Laut Bitkom wurden 61 Prozent Opfer von Cybercrime. Durchschnittlich läge der Schaden bei 219…

18 Stunden ago

Daten von mehr als 2 Millionen Bankkarten im Darknet geleakt

Sie stammen meist von mit Infostealern kompromittierten Systemen. Die Zahl der derzeit betroffenen Geräte schätzt…

20 Stunden ago

KI-Phone mit App-freiem Assistenten

In der MeinMagenta-App ist die Antwort-Maschine von Perplexity verfügbar.

1 Tag ago

ChatGPT-4.5: OpenAI verspricht mehr „emotionale Intelligenz“

Das neue Modell bietet auch eine bessere Erkennung von Mustern und Zusammenhängen. Bei ChatGPT-4.5 setzt…

2 Tagen ago