Zum Hauptinhalt Zur Navigation Zur Suche

Linux: Kernel-Lockdown soll Ruhezustand unterstützen

Der Ruhezustand des Systems auf der Festplatte (Hibernation) soll mit Hilfe eines TPMs endlich auch im Kernel -Lockdown genutzt werden können.
/ Sebastian Grüner
Kommentare undefined News folgen (öffnet im neuen Fenster)
Der Kernel-Lockdown in Linux soll den Root-Nutzer vom Rest des Kernels ausschließen. (Bild: Pixabay)
Der Kernel-Lockdown in Linux soll den Root-Nutzer vom Rest des Kernels ausschließen. Bild: Pixabay

Der sogenannte Kernel-Lockdown , also die Trennung von Kernel-Rechten und dem Root-Account, soll künftig auch den Hibernation-Ruhezustand unterstützen. Das schreibt der für die Lockdown-Patches maßgeblich verantwortliche Entwickler Matthew Garrett(öffnet im neuen Fenster) in seinem Blog. Die dafür notwendigen Patches hat Garrett zur Aufnahme in Linux eingereicht(öffnet im neuen Fenster) . Wie Garrett schreibt, blockiere der Kernel-Lockdown eigentlich nur einige wenige Nischenfunktionen des Kernels und habe deshalb auf Nutzer wenig direkte Auswirkungen. Was bisher aber eben fehle, sei die Unterstützung für den Hibernation-Ruhezustand, der offenbar vielfach genutzt werde, wie es in der Ankündigung von Garrett heißt.

Anders als beim Suspend-Ruhezustand, in dem der Systemzustand im Arbeitsspeicher abgelegt wird, wird beim Hibernation-Ruhezustand der Systemzustand auf die Festplatte geschrieben, was ein dauerhaftes Abschalten der Stromversorgung des genutzten Rechners ermöglicht. Linux nutzt dafür die Swap-Partition, in die ein Systemabbild geschrieben wird, mit einem speziellen Header, der den Kernel darüber informiert. Beim nächsten Start erkennt der Kernel den Header und stellt das Abbild wieder her.

Bisher gibt es aber keine Möglichkeit festzustellen, dass das so gestartete Abbild tatsächlich von dem eigenen alten und abgesicherten Kernel stammt. So könnten Angreifer mit Root-Rechten das korrekte Schreiben eines Abbilds theoretisch unterbinden, ein eigenes Abbild hinterlegen und so bei einem Neustart ihren eigenen Code in den sogenannten Kernel-Space einschleusen. Diese Veränderung von Kernel-Code durch Root-Nutzer soll der Kernel-Lockdown aber eigentlich verhindern, weshalb die Hibernation-Unterstützung bisher auch fehlt.

TPM zur Lockdown-Unterstützung

Eine einfache Festplattenverschlüsselung helfe hier aber nicht weiter, da das Angriffsszenario ja eben Angreifer mit Root-Rechten sind, die die Inhalte der Swap-Partition eh schon sehen können. Es fehle eine Verifikation dafür, dass das Hibernation-Abbild tatsächlich vom Kernel geschrieben wurde, nicht vom Root-Account, so Garrett.

In seinen Patches greift Garrett dabei auf ein bestimmtes Register im TPM des Rechners zurück, das nur vom Kernel beschrieben werden kann. Die besondere Funktion des TPMs sorge dabei dafür, dass ein verschlüsseltes Abbild nur dann wieder entschlüsselt werden kann, wenn die verschlüsselten Daten mit einem zuvor in dem Register gespeicherten Wert übereinstimmen. Da das dazu genutzte Register aber auch unter Lockdown-Bedingungen nur vom Kernel beschrieben werden kann, nicht jedoch von einem Angreifer mit Root-Rechten, lässt sich damit ein manipulationssicherer Hibernation-Ruhezustand umsetzen.

Umgangen werden könnte das noch durch das Starten einen alten Kernels, so Garrett. Aber auch hier kann mittels Secure Boot im Startprozess auf ein TPM zurückgegriffen werden, das neue Kernel mit der Funktion verifiziert und den Start eines alten Kernels ohne die Schutzfunktion verhindert.


Relevante Themen