Abo
  • IT-Karriere:

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.

Stellenmarkt
  1. Lidl Dienstleistung GmbH & Co. KG, Neckarsulm
  2. Scheer GmbH, deutschlandweit

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.



Anzeige
Hardware-Angebote
  1. 94,90€ + Versand mit Gutschein QVO20
  2. für 229,99€ vorbestellbar

Thaodan 17. Jan 2013

Das wird aber bei der Masse nicht klappen und wer die Masse ha, hat die Macht.


Folgen Sie uns
       


iPad Mini (2019) - Fazit

Nach vier Jahren hat Apple ein neues iPad Mini vorgestellt. Das neue Modell hat wieder einen 7,9 Zoll großen Bildschirm und unterstützt dieses Mal auch den Apple Pencil.

iPad Mini (2019) - Fazit Video aufrufen
Technologie: Warum Roboter in Japan so beliebt sind
Technologie
Warum Roboter in Japan so beliebt sind

Japaner produzieren nicht nur mehr Roboter als jede andere Nation, sie gehen auch selbstverständlicher mit ihnen um. Das liegt an der besonderen Geschichte und Religion des Inselstaats - und an Astro Boy.
Von Miroslav Stimac

  1. Kreativität Roboterdame Ai-Da soll zeichnen und malen
  2. Automatisierung Roboterhotel entlässt Roboter
  3. Cimon Die ISS bekommt einen sensiblen Kommunikationsroboter

Fitbit Versa Lite im Test: Eher smartes als sportliches Wearable
Fitbit Versa Lite im Test
Eher smartes als sportliches Wearable

Sieht fast aus wie eine Apple Watch, ist aber viel günstiger: Golem.de hat die Versa Lite von Fitbit ausprobiert. Neben den Sport- und Fitnessfunktionen haben uns besonders der Appstore und das Angebot an spaßigen und ernsthaften Anwendungen interessiert.
Von Peter Steinlechner

  1. Smartwatch Fitbit stellt Versa Lite für Einsteiger vor
  2. Inspire Fitbits neues Wearable gibt es nicht im Handel
  3. Charge 3 Fitbit stellt neuen Fitness-Tracker für 150 Euro vor

Anno 1800 im Test: Super aufgebaut
Anno 1800 im Test
Super aufgebaut

Ach, ist das schön: In Anno 1800 sind wir endlich wieder in einer heimelig-historischen Welt unterwegs - zumindest anfangs. Das neue Werk von Blue Byte fesselt dank des toll umgesetzten und unverwüstlichen Spielprinzips. Auch neue Elemente wie die Klassengesellschaft funktionieren.
Von Peter Steinlechner

  1. Ubisoft Blue Byte Anno 1800 erhält Koop-Modus und mehr Statistiken
  2. Ubisoft Blue Byte Preload der offenen Beta von Anno 1800 eröffnet
  3. Systemanforderungen Anno 1800 braucht schnelle CPU

    •  /