Secure Boot: Signierte ELF-Dateien sollen Linux absichern

Damit die Linux-Bootloader nicht auf Microsofts schwarzer Liste landen, müssen spezielle Funktionen des Linux-Kernels besonders abgesichert werden, darunter Kexec. Das wollen Entwickler mit signierten ELF-Dateien umsetzen.

Artikel veröffentlicht am ,
Linux muss in Secure-Boot-Umgebungen noch weiter abgesichert werden.
Linux muss in Secure-Boot-Umgebungen noch weiter abgesichert werden. (Bild: Anniolek/CC BY 3.0)

Ausführbare ELF-Dateien sollen künftig signiert werden können. Damit soll beispielsweise verhindert werden, dass über die Kernel-Funktion Kexec weitere Kernel in einer ungesicherten Umgebung gestartet werden und damit UEFIs Secure Boot aushebeln. Entwickler Vivek Goyal hat signierte ELF-Dateien vorgeschlagen und bereits entsprechende Patches und ein Werkzeug bereitgestellt. Noch handelt es sich aber um ein RFC.

Entwickler und Secure-Boot-Experte Matthew Garrett hatte auf mögliche Schlupflöcher in dem mit UEFI umgesetzten Sicherheitssystem hingewiesen. Gegenwärtig müssten zahlreiche Funktionen im Linux-Kernel abgestellt werden, denn sie könnten dazu genutzt werden, Secure Boot auszuhebeln.

Schlupfloch Kexec

Eine davon ist der Aufruf Kexec, mit dem ein laufender Kernel einen weiteren - auch unsicheren - Kernel starten kann. Wird in einer solchen Situation mit Kexec ein Windows-Kernel gestartet, wähnt sich dieser in einer sicheren Umgebung. Bleibt Kexec unsicher, könnte das Microsoft dazu veranlassen, sämtliche Bootloader, die einen Kernel mit Kexec starten, auf die schwarze Liste zu setzen und damit die Installation von Linux auf von Microsoft zertifizierter Hardware erschweren.

Kexec zu deaktivieren, kommt für die meisten Kernel-Entwickler aber nicht infrage. Deshalb schlägt Goyal vor, binäre ELF-Dateien zu signieren. Erst wenn die Signatur vom laufenden Kernel bestätigt worden ist, kann eine ELF-Binärdatei die Funktion Kexec nutzen. Ist die Datei unsigniert, soll die Funktion Kexec gesperrt werden. Die Binärdatei kann aber weiterhin gefahrlose Funktionen aufrufen. Erst wenn die Signatur nicht verifiziert werden kann, verweigert der Kernel die Arbeit der Binärdatei gänzlich.

Eingeschränkte Funktionen

Erkennt der Kernel über seine Funktion binfmt_elf eine signierte Binärdatei, werden seine Speicherseiten solange blockiert, bis die Signatur verifiziert worden ist. Damit soll verhindert werden, dass die Datei nach der Verifizierung noch ausgetauscht werden kann.

Jede ausführbare Datei im Executable and Linking Format (ELF) besitzt einen entsprechenden Header. Darin soll die kryptographische Signatur untergebracht werden, und nicht am Ende der Binärdatei wie mit den jüngst eingeführten Signaturwerkzeugen des Kernels. Die Signatur soll aus dem Hash-Wert des Inhalts der PT_LOAD-ELF-Segmente der Datei bestehen und mit einem privaten Schlüssel signiert werden. Gegenwärtig soll das aber nur mit statisch gelinkten Dateien funktionieren, denn gemeinsam genutzten Bibliotheken kann ebenfalls nicht getraut werden.

Entwicklungsbedürftig

Noch ist Goyals Vorschlag nicht ausgereift. Denn seine Patches verhindern gegenwärtig nicht die Nutzung des Aufrufs dlopen, mit dem dynamische Bibliotheken geladen werden können, oder ptrace, mit dem nach wie vor Binärdateien manipuliert werden könnten.

Zwar besitzt Linux seit Kernel 3.7 mit der Integrity Measurement Architecture (IMA) bereits einen ähnlichen Mechanismus. Allerdings enthalte Goyals Vorschlag sinnvolle Funktionen, die es dort nicht gebe, schreibt Kernel-Entwickler Johnathen Corbet, etwa die Möglichkeit, Funktionen nur einzuschränken, wenn die Binärdatei nicht signiert ist, oder das Sperren der Speicherseite, das eine zusätzliche Sicherheitsfunktion darstellt.

Bis es eine endgültige Lösung gibt, müssten Linux-Distributionen Kexec aber deaktivieren, wenn sie nicht auf Microsofts Blacklist laden wollen.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Aktuell auf der Startseite von Golem.de
Vermona
Zufall und Synthesizer

Wie aus einem großen DDR-Staatsbetrieb ein erfolgreicher kleiner Hersteller von analogen Synthies wurde.
Von Martin Wolf

Vermona: Zufall und Synthesizer
Artikel
  1. Blizzard: Konsolen-Abo für Solo in Diablo 4 doch nicht zwingend nötig
    Blizzard
    Konsolen-Abo für Solo in Diablo 4 doch nicht zwingend nötig

    Singleplayer benötigt in Diablo 4 auf Playstation und Xbox doch kein Abo. Wer bei seinen Abenteuern auch chatten möchte, muss aber zahlen.

  2. VW ID.Buzz XL: Längerer Elektrobus mit mehr PS und Reichweite
    VW ID.Buzz XL
    Längerer Elektrobus mit mehr PS und Reichweite

    Der ID.Buzz von VW kommt in einer XL-Version auf den Markt. Viele Neuerungen werden vom ID.7 übernommen.

  3. Microsoft Azure Cognitive Services: Kognitive Dienste in der Cloud ohne KI-Kenntnisse nutzen
    Microsoft Azure Cognitive Services
    Kognitive Dienste in der Cloud ohne KI-Kenntnisse nutzen

    Für maschinelles Sehen, Hören, Sprechen und Verstehen gibt es viele Einsatzmöglichkeiten. Wir erklären die Dienste von Microsoft und schauen dabei auch auf die Datensicherheit.
    Ein Deep Dive von Michael Bröde

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    • Daily Deals • Corsair Vengeance LPX DDR4-3600 16 GB 39,90€ und RGB PRO 49,90€ • Roccat Magma 33€ • MindStar: be quiet! Pure Base 500 FX 99,90€, ADATA LEGEND 710 2 TB 79€ • Alan Wake Remastered PS4 12,99€ • KFA2 RTX 3060 Ti 329,99€ • Kingston Fury SSD 2 TB (PS5) 129,91€ • Sony Deals Week [Werbung]
    •  /