UEFI - Unified Extensible Firmware Interface

Das BIOS eines PCs basiert im Prinzip auf dem 1982 von IBM eingeführten BIOS. Seit dem wurde es mit Patches und Erweiterungen an die moderne Hardware angepasst. Eine der Hauptaufgaben des BIOS ist, die einzelnen Hardware-Komponenten an das Betriebssystem anzumelden. Das Problem dabei sind die nicht standardisierten Prozeduren. Jeder BIOS-Hersteller hat eine andere Grund-Konfigurationen mit vielen verschiedenen Einstellungsmöglichkeiten.
Das Unified Extensible Firmware Interface (UEFI) soll das klassische BIOS in PCs mit x86- und x64-Prozessoren ablösen, um mit den Unzulänglichkeiten eines veralteten BIOS aufzuräumen, neue Funktionen zu ermöglichen und Lizenzzahlungen an IBM (BIOS-Patent) zu vermeiden.

Die UEFI-Spezifikation definiert ein Embedded-System, das sich einfacher bedienen lässt, hochauflösende Grafikkarten unterstützt und netzwerkfähig ist.

  • Software ist in C geschrieben
  • Kompatibilität durch BIOS-Simulation
  • modulare Erweiterbarkeit
  • Netzwerkfähigkeit
  • hochauflösende Grafik

BIOS und UEFI

UEFI - Unified Extensible Firmware Interface
Die Begriffe UEFI-Firmware und BIOS werden häufig synonym verwendet. Obwohl ein Motherboard eine UEFI-Firmware besitzt spricht man immer noch vom BIOS-Setup, wenn man Einstellungen verändern will.
Ein reines UEFI wird eher selten genutzt. Das würde durchgängig UEFI-taugliche Hardware voraussetzen. Aus Kompatibilitätsgründen verwendet man immer noch ein normales BIOS, dem ein UEFI übergestülpt ist.

UEFI in der Praxis

Moderne Motherboards verzichten ganz auf ein BIOS. Die Initialisierung der Hardware übernimmt hier ganz das UEFI. Einen Unterschied bemerkt man als Anwender nicht. Außer wenn man auf eine farbenfrohe Konfigurationsoberfläche stößt.

Es gibt Systeme, die standardmäßig nicht im UEFI-Modus starten, sondern zuerst das Compatibility Support Module (CSM) laden. CSM stellt BIOS-Kompatibilität her, damit auch ältere Betriebssysteme von Motherboards mit UEFI-Firmware starten können. Je nach Hersteller versuchen die Systeme zuerst UEFI-kompatible Bootmedien zu erkennen oder versuchen zuerst mit UEFI zu starten, um im Misserfolgsfall in den BIOS-Startmodus zu wechseln. Bei anderen Systemen muss man zwischen UEFI- und BIOS-Startmodus umschalten. Im UEFI-Modus ist dann das Laden des Betriebssystems von herkömmlichen USB-Sticks, CDs oder DVDs nicht mehr möglich.

Hinweis: Um Inkompatiblitäten bei Hardware und Software zu vermeiden hat UEFI ein Compatibilty Support Module (CSM), das dem Betriebssystem ein gewöhnliches BIOS vorgaukelt.

GPT - GUID-Partitionstabelle

UEFI richtet auf der Systempartition eine GUID-Partitionstabelle (GPT) anstelle eines Master-Boot-Record (MBR) ein. GPT ist die Voraussetzung, um ein Betriebssystem von einer Festplatte mit mehr als 2,2 TByte starten zu können.

UEFI Secure Boot

Die Idee hinter UEFI Secure Boot ist, dass nur vertrauenswürdige Software, die signiert sein muss, auf die Hardware zugreifen darf. Damit will man Malware, Trojaner und Viren zu Leibe rücken, die es schaffen, am Betriebssystem vorbei, sich in den Bootsektor einzupflanzen. Bootet der Rechner nur noch vertrauenswürdige Betriebssysteme, dann können Angreifer das System nicht mehr manipulieren.
Hierzu enthält die UEFI-Firmware einen Platform Key (PK), einen Key Exchange Key (KEK) und zwei Signatur-Datenbanken. Damit kann das UEFI den Code vor der Ausführung prüfen. Der Secure-Boot-Modus blockiert den Start eines unsignierten Bootloaders und verhindert somit das Laden eines Betriebssystems, dessen Signaturschlüssel nicht im BIOS hinterlegt ist. Welche Betriebssysteme booten dürfen, legt der Hersteller fest und integriert die gültigen Signaturschlüssel im BIOS.

Ist der Secure-Boot-Modus aktiviert verhindert er die Installation anderer Betriebssysteme und auch das Booten von USB-Sticks, CDs oder DVDs, ohne signierten UEFI-Bootloader. Wenn man das doch will, muss man vorher Secure Boot abschalten.
Für freie Betriebssysteme, wie zum Beispiel Linux-Distributionen, ist das ein Problem. Die lassen sich nicht installieren, wenn der entsprechende Signaturschlüssel nicht im BIOS hinterlegt ist. Um Linux auf einem so gesicherten Computer installieren und starten zu können, muss der Bootloader und der Kernel signiert und der öffentliche Signaturschlüssel im BIOS hinterlegt sein. Für große kommerzielle Distributoren, wie zum Beispiel Red Hat oder Suse dürfte es kein Problem sein, dafür zu sorgen, dass die Hardware-Hersteller ihre Signaturschlüssel aufnehmen. Allerdings gibt es auch freie Projekte, die keine so guten Kontakte zu den Hardware-Herstellern haben.

Wer nur seinen Windows-PC (ab Windows 8) mit der vorinstallierten Software nutzen will, was auf den Normal-Anwender zutrifft, der wird von UEFI Secure Boot nie etwas bemerken oder eingeschränkt sein. Nur wer ein anderes Betriebssystem starten will, der stößt auf Hindernisse. Hier reicht es schon, wenn von einem USB-Stick Windows PE, bootfähige DVDs mit einem Virenscanner, Backup-Software oder ältere Linux-Betriebssyteme gestarten werden wollen.
Secure Boot ist ab UEFI-Spezifikation 2.3.1 definiert und wird von Windows 8 als erstes kommerzielles Betriebssystem unterstützt.

Wann braucht man UEFI?

  • Booten von Datenträgern (Systempartition oder RAID) mit mehr als 2,2 TByte
  • Verwalten von bis zu 127 Partitionen
  • Boot-Optionen bei Touch-Bedienung (Tablets und All-in-One-PCs)
  • Nutzung von Secure Boot (ab UEFI 2.3.1 und Windows 8)
  • BitLocker-Verschlüsselung auf eDrives mit eigenem Kryptoprozessor

Auch wenn man eigentlich kein UEFI braucht, kann es sich lohnen, UEFI bei der Neueinrichtung eines Systems zu aktivieren. Denn es gibt nachträglich keine sicher funktionierende Möglichkeit vom BIOS- zum UEFI-Modus zu wechseln. Bei Komplettsystemen mit Windows-Logo ist ab Windows 8 UEFI sowieso Pflicht.

Betriebsmodi von Windows 8

Betriebsmodus UEFI (mit Secure Boot) UEFI (ohne Secure Boot) UEFI (mit CSM)
Partitionstabelle GPT GPT MBR
Systempartition < 2 TByte Ja Ja Nein
32-Bit-Windows Nein Nein Nein
64-Bit-Windows Ja Ja Ja

Wie sicher ist UEFI?

Mit Secure Boot hat die UEFI-Architektur nachträglich Sicherheitsfunktionen spendiert bekommen. Im Prinzip ist das aber nur die Prüfung digitaler Signaturen. Im Prinzip will man verhindern, dass sich beim Booten unberechtigte Software installieren lässt.
Dummerweise gibt es keine Strukturen, die Informationen über Sicherheitslücken und deren Schließung. So wurden schon Sicherheitslücken in UEFI bekannt. Allerdings gibt es so gut wie keine Updates. Und wenn, dann muss sich der Anwender selber um ein Update kümmern. Automatisch wird das nicht eingespielt. So ist UEFI Secure Boot ein Witz angesichts der bekannten Sicherheitslücken.

Weitere verwandte Themen:

Frag Elektronik-Kompendium.de

Die Computertechnik-Fibel, das Computer-Buch
Computertechnik-Fibel

Alles was Sie über Computertechnik wissen müssen.

Die Computertechnik-Fibel ist ein Buch über die Grundlagen der Computertechnik, Prozessortechnik, Halbleiterspeicher, Schnittstellen, Datenspeicher, Laufwerke und wichtige Hardware-Komponenten.

Das will ich haben!

Die Computertechnik-Fibel, das Computer-Buch
Computertechnik-Fibel

Alles was Sie über Computertechnik wissen müssen.

Die Computertechnik-Fibel ist ein Buch über die Grundlagen der Computertechnik, Prozessortechnik, Halbleiterspeicher, Schnittstellen, Datenspeicher, Laufwerke und wichtige Hardware-Komponenten.

Das will ich haben!

Elektronik-Set Raspberry Pi Edition
Elektronik-Set Raspberry Pi Edition

Elektronik erleben mit dem Raspberry Pi mit Python und GPIO Zero

  • Leichter Einstieg ins Hardware-nahe Programmieren mit Python und GPIO Zero
  • Experimentieren und Programmieren ohne Vorkenntnisse
  • Sofort Loslegen mit All-in-one-Set

Elektronik-Set jetzt bestellen