Matthew Garrett: UEFI ist kein böser Plan von Microsoft

 

UEFI ist in der Linux-Community unbeliebt – zu unrecht, findet der Kernel-Entwickler Matthew Garrett. Es müsse nur garantiert sein, dass der Anwender selbst entscheiden kann, was er auf UEFI-Rechnern installiert, sagte er im Interview mit Golem.de. Dafür wolle er sorgen.

Der Kernel-Entwickler Matthew Garrett zog während des Linuxtags 2013 viel Interesse auf sich. Denn während die Linux-Community UEFI und Secure Boot teils argwöhnisch und sogar ablehnend gegenübersteht, bleibt Garrett pragmatisch. Er halte Secure Boot nicht wie einige andere „für einen bösen Plan von Microsoft“, sagte er in seiner Keynote-Ansprache. Dennoch gab er im Interview mit Golem.de zu: Secure Boot kann missbraucht werden. Es kann so implementiert werden, dass der Anwender keine Kontrolle über sein Gerät hat.“ Das möchte er verhindern und gleichzeitig die Sicherheit und Freiheit der Linux-Nutzer erhöhen. Garrett tat sich in einer Podiumsdiskussion mit mehreren Kernel-Entwicklern nicht leicht, die Frage zu beantworten, ob er UEFI möge. Schließlich haben sich seine Kollegen gerade einhellig gegen UEFI und vor allem gegen Secure Boot ausgesprochen. Nach kurzem Zögern zählte er aber die Vorteile der neuen Firmware-Spezifikation auf.

UEFI hat auch Vorteile

Für Entwickler sei es einfacher, mit UEFI und damit an der Firmware eines Rechners zu arbeiten. Und mit UEFI sei technisch viel mehr möglich als mit dem in die Jahre gekommenen Bios. Auch die Arbeit an der Kernel-Entwicklung sei einfacher. So könnten etwa Crashdumps des Kernels im UEFI gespeichert werden, was das Zurückverfolgen und Beheben schwerwiegender Fehler wesentlich erleichtere.

Secure Boot habe ebenfalls Vorteile: Keylogger und vor allem Bootkits könnten nicht mehr ohne weiteres auf Computer eingebracht werden. Denn mit Secure Boot führt das System nur noch jene signierte Software aus, deren Signaturschlüssel mit denen in der Firmware übereinstimmen.

Linux muss überall laufen

Garrett arbeitete über ein Jahr daran zu garantieren, dass Linux auch künftig auf allen handelsüblichen Rechnern läuft. Denn wegen Microsofts Zertifizierungsrichtlinien für Windows 8 werden fast alle Computer nur noch mit aktiviertem Secure Boot ausgeliefert. Diese Funktion im Bios-Nachfolger UEFI sorgt dafür, dass nur noch digital signierte Software ausgeführt wird.

Ohne Microsoft-Schlüssel bleibt jedoch sämtliche andere Software ausgesperrt, insbesondere Linux-Distributionen. Damit dies nicht geschieht, entwickelte Garrett zusammen mit Suse-Entwicklern den minimalen Bootloader Shim. Dieser ist mit einem Schlüssel von Microsoft signiert, um selbst starten zu können.

Darüber hinaus ermöglicht Shim, einfach eigene Schlüssel hinzuzufügen, was Linux-Distributionen nutzen können. So verweigere sein eigener Laptop den Start von allem, was nicht vom Linux-Projekt Fedora signiert worden sei – „einschließlich Windows“, sagte Garrett.

Freiheit heißt, selbst zu entscheiden

In der Podiumsdiskussion bekräftigte Garrett, dass genau dieser Punkt ganz im Sinne der Nutzerfreiheit sei – ein ihm sehr wichtiges Ziel. Jeder könne mit Secure Boot selbst bestimmen, welcher Code auf dem eigenen Rechner ausgeführt wird und welcher nicht.

Diese Art der Freiheit ist gleichzeitig ein Sicherheitsgewinn. Denn Malware wie Keylogger und Bootkits könnten sich nicht mehr ohne weiteres auf Computern einbringen lassen. Das schützt wiederum die Privatsphäre jedes Einzelnen vor Bespitzelungen.

Voraussetzung für diese Freiheit und Sicherheit ist jedoch, dass die Hardware-Hersteller Secure Boot und die UEFI-Firmware in einer Weise implementierten, die es ermöglicht, eigene Schlüssel zu hinterlegen und ein anderes Betriebssystem zu installieren. In der Zeit, in der sich Garrett mit der Thematik befasst hat, hat das nicht immer geklappt.

UEFI-Implementierungen mit Fehlern

Der Grund dafür sei aber nicht etwa die Böswilligkeit der Hardware-Hersteller gewesen, sondern schlicht Fehler in der UEFI-Implementierung, sagte er. Garret berichtete von Toshiba-Laptops, die keinen korrekten Signaturschlüssel enthielten und dadurch den Start einer Linux-Distribution verwehrten. Auch auf einigen Geräten von Lenovo sei eine Parallelinstallation von Windows und Linux nicht möglich.

Außerdem bauten die Hersteller selbst Fehler in UEFI ein, zum Beispiel Samsung in Laptops, die unter bestimmten Umständen nicht mehr benutzbar waren, da die Firmware nicht startete. Der Fehler fiel zunächst nur Linux-Nutzern auf. Garrett fand jedoch heraus, dass sich der Bug in Samsungs Firmware auch unter Windows 7 ohne Secure Boot auslösen ließ. Ähnliches entdeckte Garrett auch auf Hauptplatinen von Intel.

Secure-Boot-Probleme noch nicht völlig ausgeräumt

„Alle Fehler, die uns bekannt sind, haben wir bereits behoben“, sagte Garrett, bezog sich damit aber leider nur auf die Kernel-Entwickler. Diese haben einige Workarounds in den Quellcode eingebaut, um die Fehler der Hardware-Hersteller auszubügeln. Teilweise müssen Funktionen im Kernel ausgeschaltet werden, damit sie die Fehler in UEFI nicht auslösen.

In einem Fall verhindere der bestehende Workaround für ein System sogar effektiv die Installation von Linux auf einem anderen System, sagte Garrett. „Man kann es zwar nicht beschädigen, aber auch kein Linux darauf installieren.“ Für Linux-Nutzer heißt das, beim Kauf aktueller Geräte darauf zu vertrauen, dass die Firmware einigermaßen fehlerfrei ist. Bei etwas älteren Modellen ist sehr oft ein Firmware-Update angebracht.

Secure Boot im Server

Für Unternehmen, die großen Wert auf die Sicherheit und Integrität ihrer Server legen, könnte Secure Boot ebenfalls von Nutzen sein, sagte Garrett Golem.de. Denn auch hier gelte, dass mit Secure Boot letztlich der Administrator entscheide, welche Software ausgeführt wird.

Doch neben der noch fehlenden Unterstützung von einigen Kernel-Funktionen wie Kexec sprach Garrett ein Detail an, das in der UEFI-Spezifikation nicht berücksichtigt wurde: Derzeit muss eine Person physisch am Rechner sitzen, die die Installation eines Schlüssels in die Firmware bestätigt. Diese Sicherheitsmaßnahme ist auf Desktop-Systemen durchaus sinnvoll. In einer Serverumgebung mit mehreren Rechnern müsste auf jedem Einzelnen eine Linux-Distribution installiert werden. Damit wäre eine automatisierte Installation über das Netzwerk nicht mehr möglich.

Viele Serverhersteller bieten bereits Hardware mit UEFI an. Ob künftig auch Secure Boot auf Server-Hardware Anwendung findet, regelt höchstwahrscheinlich die Nachfrage. Ein Kernel-Entwickler, der nicht genannt werden möchte, äußerte gegenüber Golem.de auf dem Linuxtag starke Zweifel, dass diese Nachfrage je bestehen wird. Garrett, der seit etwa einem halben Jahr für den Server- und Cloud-Hosting-Spezialisten Nebula arbeitet, ist davon nicht überzeugt. Immerhin ist die mit Secure Boot gewonnene Freiheit und Sicherheit ein starkes Argument.

 

Zuerst veröffentlicht auf:

http://www.golem.de/news/

Tags: ,