UEFI adé
Mainboard für Core i-12000 mit Coreboot statt UEFI-BIOS
Manche misstrauen dem komplexen und proprietären UEFI-BIOS. Nun verkauft die Firma 3mdeb ein Standard-PC-Mainboard von MSI, auf dem die quelloffene Firmware-Alternative Coreboot läuft. Der Test bringt einige Überraschungen ans Licht.
Seit mehr als einem Jahrzehnt startet die überwiegende Mehrheit aller x86-Computer mit einem BIOS nach UEFI-Spezifikation. Schon seit 20 Jahren gibt es zwar quelloffene BIOS-Alternativen wie Coreboot. Doch sie kamen bisher fast nur auf älteren oder sehr speziellen Rechnern zum Einsatz. Außerdem läuft Coreboot auf Chromebooks, die sich aber nicht als individuell konfigurierbare Allzweckcomputer eignen. Seit einigen Monaten verkauft die polnische Firma 3mdeb das PC-Mainboard MSI PRO Z690-A DDR4 mit der hauseigenen Coreboot-Distribution „Dasharo“, auf dem ziemlich aktuelle Intel-Prozessoren der Generation Core i-12000 „Alder Lake“ laufen. Damit kann sich nun jeder einen PC bauen, der ohne UEFI-BIOS bootet.
Coreboot-Vorzüge
Es gibt unterschiedliche Gründe, ein UEFI-BIOS zu meiden. Manche Firmen wünschen möglichst weitreichende Kontrolle über das System, etwa um unerwünschte Firmware-Funktionen weglassen oder eigene einbauen zu können. Chromebooks etwa können auf UEFI-Funktionen verzichten, weil sie ausschließlich Linux booten. Andere Firmen benötigen lange Support-Zeiträume und wollen dazu Sicherheitsupdates für die Firmware selbst einpflegen können. Einigen ist das UEFI-BIOS schlichtweg nicht sicher genug. Sein großer Funktionsumfang erfordert eine große Menge Code, was die Wahrscheinlichkeit von Sicherheitslücken erhöht. Außerdem sind die meisten UEFI-BIOSe proprietär, bestehen also im Wesentlichen aus Binärcode, der obendrein noch von zahlreichen unterschiedlichen Zulieferern stammt [1]. Diesen sogenannten Binary Large Objects (BLOBs) muss man quasi blind vertrauen, sie bilden also eine große Trusted Code Base (TCB).
Coreboot hingegen folgt dem Konzept, nur die für den Bootvorgang essenziellen Komponenten zu initialisieren und die Kontrolle so früh wie möglich ans Betriebssystem zu übergeben. Denn für letzteres lassen sich Sicherheitsupdates viel schneller nachreichen als für die Firmware.
Schließlich gibt es Firmen und Personen, die proprietärer Firmware (und Software) nicht vertrauen, weil darin unerwünschte Funktionen bis hin zu Hintertüren (Backdoors) verborgen sein können. Vor allem Intels „Converged Security and Management Engine“ (CSME, auch kurz ME genannt), die in allen Intel-Plattformen seit etwa 2006 sitzt, steht in der Kritik. Manche fürchten, in der ME könnte eine Hintertür versteckt sein, möglicherweise im Auftrag vom US-Geheimdiensten. Belege dafür existieren nicht.
Coreboot läuft auf manchen Rechnern, die besonders sensiblen Anwendungen dienen. Beispielsweise verwendet es Siemens für bestimmte Industrie-PCs und der VPN-Dienstleister Mullvad für Server(boards). Die auf hohe Sicherheit ausgerichtete Linux-Distribution Qubes OS, die parallel laufende Programme in jeweils eigenen virtuellen Maschinen (VMs) startet, kooperiert mit 3mdeb. Der von 3mdeb verkaufte Computer Dasharo FidelisGuard Z690 mit dem hier vorgestellten MSI-Mainboard ist der erste für Qubes OS zertifizierte Desktop-PC. Auch für das ebenfalls Qubes-OS-zertifizierte Notebook NV41 der niederländischen Firma NovaCustom liefert 3mdeb die Coreboot-Firmware.
3mdeb legt seine für bestimmte Boards und Systeme angepassten Coreboot-Pakete offen. Wer möchte, kann also die Firmware für diese Systeme selbst kompilieren. Wie das im Prinzip funktioniert, haben wir in [2] beschrieben. Für das MSI PRO Z690-A DDR4 erklärt 3mdeb den Build-Vorgang unter Ubuntu (20.04, 21.04 oder 22.04), siehe ct.de/ya9x.
Üblicherweise verwendet man Coreboot zusammen mit Linux oder anderen Open-Source-Betriebssystemen sowie ohne proprietäre Treiber. Coreboot-Firmware mit UEFI-Bootloader kann aber auch Windows laden. Das ist allerdings widersinnig, denn ein nur als Binärcode verfügbares Closed-Source-Betriebssystem mit proprietären Treibern von zahllosen Herstellern schleppt potenziell mehr Sicherheitslücken und Hintertüren ein, als sich mit offener Firmware vermeiden lassen.
Coreboot-Nachteile
Coreboot ersetzt wesentliche Aufgaben, die ein (UEFI-)BIOS erledigt, zwar durch quelloffenen Code. Es gibt jedoch kein einheitliches Coreboot-Image, das beliebige Hardware initialisieren könnte. Vielmehr muss Coreboot für das jeweilige Mainboard angepasst und kompiliert werden. Dazu wiederum sind technische Informationen nötig, die für die meisten Boards und ihre Komponenten nicht öffentlich bekannt sind. Daher gibt es nur für relativ wenige Boards angepasste Coreboot-Pakete. Die Firma 3mdeb führt solche Anpassungen im Auftrag von Dritten aus; in [2] hatten wir über Coreboot für den NUC C3 der chinesischen Marke Yanling berichtet, den das US-Unternehmen Protectli für Hardware-Firewalls zukauft.
Real existierende Coreboot-Firmware enthält meistens auch Firmware-BLOBs, weil sie zur Initialisierung wesentlicher Systemkomponenten nötig sind. Ohne Firmware für das sogenannte Memory Training könnte etwa der im Prozessor integrierte Speichercontroller keinen Arbeitsspeicher ansteuern. Auch die Energieverwaltung – etwa die Steuerung der Performance States (P-States) der CPU –, beruht auf binärer Firmware. Sie läuft bei AMD- und Intel-CPUs zumindest teilweise auf integrierten (Mikro-)Controllern, die unabhängig von der CPU arbeiten. Bei Intel übernimmt die erwähnte ME einige essenzielle Funktionen, die binären Firmware-Module dafür stellt Intel in Form sogenannter Firmware Support Packages (FSP 2.0) bereit. AMD packt seine Firmware-BLOBs in die AMD Generic Encapsulated Software Architecture (AGESA).
Der Anteil der BLOBs am Gesamtumfang des kompilierten Firmware-Codes ist bei aktuellen x86-Systemen recht hoch. 3mdeb nennt für Dasharo einen Anteil von rund 50 Prozent (siehe ct.de/ya9x) und hebt hervor, dass damit der Umfang der Trusted Code Base immerhin um die Hälfte schrumpft.
Das MSI PRO Z690-A DDR4 speichert seine Firmware – also UEFI-BIOS oder Dasharo – im NOR-Flash-Chip Winbond 25Q256JW mit 256 Megabit, also 32 MByte Kapazität. Die nutzt Dasharo nicht aus, sondern benötigt eigentlich nur etwa 4 MByte. Es lagern aber mehrere Kopien der Firmware im Flash-Chip.
Das Coreboot-Konzept für möglichst schlanke Firmware hat einen eingebauten Nachteil: Es fehlen Funktionen, die man von herkömmlichen UEFI-BIOSen kennt. Viele davon dürften Menschen, die sich für Coreboot interessieren, kaum vermissen, etwa die Ansteuerung von RGB-LEDs sowie Übertaktungsfunktionen. Doch interessanterweise wünschen sich einige Dasharo-Nutzer laut Issue-Tracker im GitHub-Repository Unterstützung für Extended Memory Profiles (XMP), um Speichermodule schneller anzusteuern – also doch eine Übertaktungsfunktion.
Coreboot-Firmware hat typischerweise auch keine eingebaute Update-Funktion für ihren eigenen Code und manchmal fehlt ein Gegenstück zum BIOS-Setup. Nicht immer ist ein UEFI- oder BIOS-kompatibler Bootloader dabei, dann lässt sich Linux etwa nur über ein angepasstes grub starten. Nicht jede Coreboot-Firmware bindet das OptionROM eines PCIe-Hostadapters oder das VGA-BIOS einer Grafikkarte ein.
Es ist logisch, aber man muss es sich klarmachen: Mit einer Coreboot-Firmware schneidet man sich von BIOS-Updates des Hardwareherstellers ab. UEFI-Sicherheitslücken betreffen einen dann zwar nicht mehr, aber man erhält vom Hersteller auch keine Patches gegen Kompatibilitätsprobleme sowie keine Updates für neue CPU-Typen. Das MSI PRO Z690-A DDR4 hat zwar eine LGA1700-Fassung, in die auch die aktuellen „Raptor Lake“-Prozessoren der Generation Core i-13000 passen, läuft mit Dasharo bisher aber nur mit vier ausgewählten Alder-Lake-Typen: Core i9-12900K, Core i7-12700K, Core i5-12600K und Core i5-12400F.
Coreboot-Variante
Als jüngste Dasharo-Version für das MSI PRO Z690-A DDR4 liefert 3mdeb v1.1.1 vom 23. Februar 2023. 3mdeb spricht bei Dasharo von einer Coreboot-Distribution, ähnlich wie Ubuntu oder Fedora Linux-Distributionen sind. Genau wie Linux hat Coreboot keinen festgelegten Funktionsumfang. Dasharo besteht nicht nur aus Coreboot, sondern hat auch einen Open-Source-UEFI-Teil. Für letzteren verwendet 3mdeb das im Rahmen des Projekts TianoCore gepflegte und offengelegte EFI Design Kit 2 (EDK II). Dank UEFI-Kompatibilität booten Linux-Distributionen ohne weitere Modifikationen. Außerdem funktionieren zahlreiche (aber nicht beliebige) aktuelle Grafikkarten mit UEFI-Firmware. Dasharo beherrscht zudem UEFI Secure Boot, initialisiert das Trusted Platform Module (fTPM 2.0) der Intel-Chips und lädt auf Wunsch auch einen UEFI-Netzwerktreiber, damit das Board per PXE booten kann.
Das Dasharo-Setup ähnelt einem typischen BIOS-Setup im Textmodus, bietet aber wenige Einstellmöglichkeiten. Für Firmware-Updates und andere Wartungsfunktionen stellt 3mdeb die Dasharo Tools Suite (DTS) bereit, die von einem USB-Stick bootet. Mit dieser DTS kann man ein anderswo gekauftes MSI PRO Z690-A mit UEFI-BIOS auch selbst auf Dasharo „umflashen“. Wir haben das mit der DDR5-Version des Boards namens MSI PRO Z690-A WIFI erfolgreich ausprobiert. Wenn man DTS benutzt und das Board per Ethernet ans Internet anschließt, lädt die Software auf Wunsch das passende Dasharo-Image von einem Cloudserver. Dabei muss man darauf vertrauen, dass 3mdeb diesen Prozess ohne Sicherheitslücken umgesetzt hat. Puristen dürften das Dasharo-Image wohl eher selbst bauen.
Dasharo-Einschränkungen
Um Dasharo-Firmware herunterzuladen, muss man sich nirgends registrieren. 3mdeb lädt Freiwillige dazu ein, an Dasharo mitzuarbeiten. Für kommerziellen Support verlangt das Unternehmen eine jährliche Gebühr von 71,40 Euro; dafür erhält man die DTS-Version „Supporters Entrance“, kurz DTS SE. Wir haben das mit Dasharo „vorbespielte“ MSI PRO Z690-A DDR4 von 3mdeb gekauft, wo es mit 330 Euro rund 100 Euro mehr kostet als das „normale“ Board mit UEFI-BIOS. Im Preis des Boards ist ein Jahr kommerzieller Support enthalten. Das MSI-Board ist andernorts derzeit schlecht lieferbar.
Falls Experimente mit dem Umflashen der Mainboard-Firmware scheitern, braucht man zusätzliche Hardware, um den Flash-Chip des Boards neu zu beschreiben. Dafür verkauft 3mdeb für 66 Euro das „CH341A Programmer Kit“ mit einer Kontaktzange, die auf den aufgelöteten Winbond-Speicherchip im WSON8-Gehäuse passt. Damit kann man ein Firmware-Image von einem anderen PC aus per USB in den Flash-Chip schreiben; das haben wir nicht ausprobiert und es war auch nicht nötig.
Das Dasharo Setup enthält eine Option, um die Intel ME „abzuschalten“. Da Intel die ME jedoch nicht in vollem Umfang öffentlich dokumentiert, ist dieses Versprechen gewagt. Wegen ihrer für die Initialisierung der Hardware essenziellen Funktionen lässt sich die ME nach unserem Wissen nicht komplett abschalten. Doch durch Reverse Engineering haben Open-Source-Tüftler herausbekommen, wie sich große Teile des ME-Binärcodes aus dem erwähnten FSP 2.0 löschen lassen, aber der Rechner weiter funktioniert. Dasharo bietet zudem an, das sogenannte HAP-Bit zu setzen; die Abkürzung steht für High Assurance Platform, grob übersetzt also „besonders vertrauenswürdiges System“. Nach allem, was man darüber weiß – wie erwähnt, dokumentiert es Intel nicht –, schaltet das HAP-Bit aber nicht etwa die ME ab, sondern sorgt nur dafür, dass die ME das System nicht herunterfährt, obwohl bestimmte Firmware-Teile fehlen.
Der langen Rede kurzer Sinn: Der Funktionsumfang einer ME auf einem System mit teilweise entfernter ME-Firmware ist unbekannt, aber kleiner als auf einem PC mit normalem UEFI-BIOS. Wenn die ME deaktiviert wurde, funktioniert auch das integrierte fTPM 2.0 nicht mehr und auch HDMI-Kopierschutz (Protected Audio/Video Path) entfällt. Dann lassen sich möglicherweise keine Videos von Streaminganbietern mehr abspielen.
Die Dasharo-Firmware harmoniert nur mit ausgewählten Prozessoren und Grafikkarten, die 3mdeb in einer Hardware Compatibility List (HCL, siehe ct.de/ya9x) veröffentlicht. Diese nennt auch eine Reihe von Speichermodulen, aber unsere (von Kingston) standen nicht drauf und liefen trotzdem. Allerdings betrieb sie das Board nur als DDR4-2933 und nicht als DDR4-3200. Daran lässt sich nichts ändern, weil Dasharos Setup dafür keine Optionen bietet. Ein probeweise eingebauter Core i3-13100 funktionierte nicht. Zu den unterstützten Grafikkarten gehören etwa eine AMD Radeon RX 6950 XT von MSI sowie Nvidias GeForce-Karten GTX 1060, 1080 TI, RTX 2080 und RTX 3060 von mehreren Kartenherstellern.
Mainboard-Messwerte
Um die Eigenschaften des MSI PRO Z690-A DDR4 Dasharo mit ähnlichen Mainboards vergleichen zu können, haben wir zunächst Windows 11 installiert. Dann haben wir das Board mit Ubuntu 23.04 getestet; in beiden Fällen traten keine wesentlichen Probleme auf. Der Geräte-Manager von Windows 11 meldete allerdings ein virtuelles Gerät, für das sich keine Treiber fanden.
Ein Core i7-12700K lieferte praktisch dieselbe Performance wie auf Boards mit UEFI-BIOS; die Multithreading-Performance im Benchmark Cinebench R23 lag lediglich um fünf Prozent niedriger. Unser DDR4-3200-RAM wurde als DDR4-2933 betrieben, das ist kein wesentlicher Nachteil.
Die Datentransferraten von M.2-Slot, USB-Buchsen und Ethernet-Adapter lagen auf typischem Niveau. Auch die Leistungsaufnahme entsprach der des eng verwandten MSI PRO Z690-A WIFI mit DDR5-RAM [3]. Bei Letzterem konnten wir mit den üblichen Tricks noch ein paar Watt einsparen: Im BIOS-Setup schalteteten wir PCIe ASPM und die tiefen C-States für die CPU ein. Das gelang beim Dasharo-Board nicht, weil das Dasharo-Setup diese Optionen nicht bietet. Ubuntu aktiviert diese Funktionen mit eigenen Treibern und lief im Leerlauf um 5 Watt sparsamer (18 Watt).
Die Dasharo-Firmware bringt auch eine Lüfterregelung mit; sie ist Teil der Firmware-Komponente für den „Embedded Controller“ (EC, in diesem Fall im Super-I/O-Chip Nuvoton NCT6687-D). Doch der Ventilator des CPU-Kühlers drehte im Leerlauf deutlich höher als bei MSI-Boards mit UEFI-BIOS.
Fazit
Das MSI PRO Z690 DDR4 mit Dasharo-/Coreboot-Firmware hinterlässt einen zwiespältigen Eindruck. Zwar funktioniert es wie erwartet, jedoch nur mit ausgewählten Komponenten. Die BIOS-Alternative schränkt also die zahlreichen Konfigurationsmöglichkeiten, die das gut ausgestattete Desktop-PC-Mainboard eigentlich bietet, erheblich ein. Und völlig ohne proprietäre Firmware geht es trotzdem nicht. Die steckt dabei nicht nur in der Dasharo-Firmware, sondern wie bei jedem anderen PC auch in der SSD, in Tastatur, Maus und gegebenenfalls der Grafikkarte. Doch immerhin stellt 3mdeb mit dem MSI-Board endlich eine aktuelle und leistungsstarke Alternative zu Computern mit UEFI-BIOS bereit. (ciw@ct.de)
| MSI PRO Z690-A DDR4 mit Dasharo | |
| ATX-Mainboard für Intel Core i-12000 mit Coreboot-Firmware statt UEFI-BIOS | |
| Anbieter, URL | 3mdeb, dasharo.com |
| CPU-Fassung, Chipsatz | LGA1700 / Intel Z690 |
| Mainboard-Bauform | ATX, 30,5 cm × 24,5 cm |
| Arbeitsspeicher | 4 × DDR4-3200 UDIMM, maximal 32 GByte pro Modul |
| PCI-Express-Slots | 1 × PCIe 5.0 x16, 1 × PCIe 3.0 x4 (x16), 2 × PCIe 3.0 x1 (x16/x1), 3 × M.2 PCIe 4.0 x4, 1 × M.2 PCIe 3.0 x4 (alle 2242, 2260, 2280, 1 × 22110) |
| Ethernet | 1 × 2,5 Gbit/s (Intel I225-V) |
| Audio | Realtek ALC892 (7.1 analog) |
| externe Anschlüsse | 1 × DisplayPort 1.4, 1 × HDMI 2.1, 1 × RJ-45, 1 × USB-A 3.2 Gen 2, 1 × USB-C 3.2 Gen 2, 2 × USB-A 3.2 Gen 1, 4 × USB-A 2.0, 6 × Audio-Klinke |
| Lüfteranschlüsse | 8 × 4-Pin |
| weitere interne USB-Anschlüsse | 1 × 19-pol USB 3.2 Gen 1 Frontpanel, 2 × USB 2.0 Frontpanel |
| weitere interne Anschlüsse | 6 × SATA, 1 × FP-Audio, 1 × TPM, 3 × RGB-LED (ohne Funktion bei Dasharo) |
| Besonderheiten | Dasharo-Firmware von 3mdeb statt UEFI-BIOS von MSI |
| Funktionstests / Messwerte mit Intel Core i7-12700K | |
| Boot-Modi: UEFI mit / ohne Secure Boot / BIOS (Firmware) | ✓ / ✓ / – (v1.1.1, 23.3.2023) |
| Cinebench R23 | 1927 / 21891 Punkte (Single- / Multithreading) |
| Leerlauf / Volllast Windows 11 | 23 / 158 Watt (kurzzeitig 270 Watt) |
| Leerlauf Ubuntu 23.04 | 18 Watt |
| Preis | 330 € |
| ✓ funktioniert – funktioniert nicht | |
Dasharo-Anleitung und Openness Score: ct.de/ya9x