Samsung-UEFI-Bug: Schutz in Linux-Kernel integriert

Die Kernel-Entwickler arbeiten an neuen Linux-Kerneln, die beim Booten per UEFI Samsung-Notebooks nicht mehr zerstören können. Offenbar gibt es aber noch andere Wege, die UEFI-Firmware empfindlich zu stören.

In Pocket speichern vorlesen Druckansicht 201 Kommentare lesen
Lesezeit: 3 Min.
Von
  • Thorsten Leemhuis

Linus Torvalds hat am Donnerstagmorgen zwei Änderungen in den Hauptentwicklungszweig von Linux aufgenommen, durch die der Kernel-Treiber "samsung-laptop" nicht mehr aktiv wird, wenn Linux per UEFI gestartet wurde (1, 2). Damit soll verhindert werden, dass einige Samsung-Notebooks irreparabel beschädigt werden, wenn darauf Linux per UEFI bootet. Allerdings ist damit längst nicht alle Gefahr gebannt: Offenbar gibt es weitere Wege, die Firmware der Geräte empfindlich zu stören.

Betroffen von der Problematik sind laut derzeitigem Kenntnisstand mindestens die Samsung-Notebooks 300E5C, Samsung 530U3C, NP700Z3C, NP700Z5C, NP700Z7C und NP900X4C. Bekannt geworden war das Ganze über einen Fehlerbericht, laut dem Notebooks nach einmaligem Starten von Ubuntu 12.04 oder 12.10 im UEFI-Modus kaputt waren. Das Problem dürfte aber auch mit anderen Linux-Distributionen auftreten, denn auch die bringen den Samsung-Laptop-Treiber mit, der offenbar einen Fehler in der UEFI-Firmware auslöst.

Greg Kroah-Hartman, der bei der Entwicklung und Integration des Treibers in den Linux-Kernel geholfen hat (1, 2), schreibt in einem Google+-Post, Samsung-Entwickler hätten ihm versichert, es sei kein Problem, dass der Treiber stichprobenartig direkt im Arbeitsspeicher agiert. Genau das scheint laut Einträgen in einem Fehlerbericht bei Kernel.org zu den Störungen zu führen, die die Notebooks beschädigen oder zu MCEs (Machine Check Exceptions) führen.

Mit den Änderungen im Hauptentwicklungszweig von Linux zieht der Schutz innerhalb von Stunden oder Tagen in die Entwicklerzweige einiger Distributionen ein; auch der kommende Linux-Kernel 3.8 wird ihn enthalten. In den nächsten ein bis zwei Wochen dürften zudem neue Ausgaben der Kernel-Serien 3.0, 3.2, 3.4 und 3.7 erscheinen, da diese noch aktiv gepflegt werden und den Treiber mitbringen. Die Linux-Distributoren dürften die Änderungen in den nächsten Wochen per Systemaktualisierung zu ihren Usern bringen. Da die aktuellen Installationsmedien der Distributionen die Patches noch nicht enthalten, sollte man sie auf betroffenen Geräten allenfalls über das Compatibility Support Module (CSM) der UEFI-Firmware starten, das einen BIOS-Modus für den Systemstart emuliert.

Offenbar gibt es aber noch andere Wege, die UEFI-Firmware mancher Samsung-Notebooks aus dem Tritt zu bringen. Wie uns Jakob Heinemann per E-Mail mitteilte, konnte er bei seinem NP300E5C das UEFI-Setup nicht mehr aufrufen, nachdem er UEFI-Boot-Einträge zum Starten eines im BIOS-Modus installierten Linux angelegt hatte. Laut seiner Analyse wurden dabei Einträge zum Aufrufen des UEFI-Setups überschrieben, weil eine Funktion der UEFI-Firmware einen nicht spezifikationsgemäßen Wert zurückgibt. (thl)