Was das Nitropad sicher macht
Wie eingangs erwähnt, soll die Heads-Firmware helfen, die Manipulation der Firmware beziehungsweise des genutzten Betriebssystems schnell und einfach erkennen zu können. Vorgestellt hat Heads der Entwickler Trammell Hudson erstmals auf dem 33. Chaos Communication Congress als mögliche Maßnahme gegen den sogenannten Evil Maid Attack, also eine Firmware-Manipulation in einem Moment, bei dem der eigene Rechner nicht unter eigener Kontrolle ist, etwa weil dieser im Hotelzimmer liegt.
Grundlegend ist Heads eine sehr kleine Linux-Distribution, die direkt von der Coreboot-Firmware als sogenanntes Payload geladen wird. Heads selbst greift für seine eigentliche Aufgabe auf ein Trusted Platform Module (TPM) zurück. Dieses wird genutzt, um die Daten und den Code beim Boot mit Hilfe von Hashwerten zu überprüfen. Dies geschieht auch mit den kryptographischen Headern der verschlüsselten Festplatten, die so ebenfalls vor Manipulation geschützt werden sollen.
Um diesen Messvorgang beim Neustart verifizieren zu können, bietet Heads die Nutzung eines Time-based One-time Password (TOTP) an. Dieses wiederum kann dann mit einer Authenticator App auf dem Smartphone überprüft werden. Statt mit Hilfe der App kann dieses gemeinsame Secret beim Nitropad eben auch mit dem Nitrokey selbst überprüft werden, dann jedoch per HOTP (HMAC-based One-time Password), das einen zwischen den Geräten ausgehandelten Zähler statt der Uhrzeit verwendet.
Heads, wir haben ein Problem
Neben dem Bootvorgang wird auch die unverschlüsselte Linux-Bootpartition überprüft. Hier befinden sich beispielsweise der Linux-Kernel und weitere zum Start des Betriebssystems notwendige Programme, die das Grundsystem starten und zu einer Passworteingabe für den verschlüsselten Teil des Linux-Systems auffordern. Auch die Dateien auf der Boot-Partition werden durch Heads abgesichert, indem sie mit einem GPG-Schlüssel, der sich auf dem Nitrokey befindet, signiert werden. Diese Signaturen prüft Heads unter Rückgriff auf den Nitrokey ebenfalls bei jedem Bootvorgang. Wurden die Dateien verändert, warnt Heads mit einer Fehlermeldung auf rotem Grund.
Das passiert allerdings auch bei jedem Update, bei dem die Boot-Partition verändert wird. Der Rechner startet nicht wie gewohnt, sondern die Warnmeldung weist auf geänderte Hash-Werte auf der Boot-Partition hin. Entsprechend müssen die Hashes nach jedem Update, das Änderungen an der Boot-Partition vorgenommen hat, aktualisiert werden. Um die Signaturen zu erneuern, fragt Heads, ob der Nitrokey eingesteckt ist. Diese Frage sollten Nutzer nicht - wie gefordert - mit der Y-Taste für Yes beantworten, da Heads das US-Tastatur-Layout verwendet, bei dem Y und Z getauscht sind. Drücken Nutzer auf Y wird dieses zu Z und der Vorgang bricht sofort ab, ein Reboot ist notwendig.
Stattdessen können Nutzer ganz ohne Y und Z einfach auf Enter drücken, auch dann fordert Heads zur Eingabe des Nitrokey-PINs auf und die Dateien in der Boot-Partition werden neu signiert. Das ist zwar etwas nervig, geht aber schnell von der Hand. Aus Sicherheitsgründen empfiehlt es sich, das Nitropad nach jedem Systemupdate, bei dem auch Dateien in der Boot-Partition verändert wurden, neu zu starten und die Dateien zu signieren - sonst könnte eine Veränderung in Abwesenheit nicht erkannt werden.
Wird ein neuer Kernel installiert, müssen Nutzer zudem die Default-Boot-Einstellung ändern und den entsprechenden Kernel, der standardmäßig gestartet werden soll, festlegen. Denn Heads überspringt den Bootloader des Linux-Systems (beispielsweise Grub) und startet das Ubuntu oder ein anderes Linux direkt.
Das Updaten nervt im Alltag zwar etwas, allerdings gehört es zu den elementaren Sicherheitsfunktionen von Heads: den überprüften und abgesicherten Boot-Vorgang bis zum verschlüsselten System sicherzustellen. Sicherheit ist eben häufig nicht komfortabel.
Weniger ME für mehr Sicherheit
Neben den Signaturen lassen sich auch Coreboot und Heads selbst updaten. "Wir werden zukünftig Updates auf unserer Webseite zum Download anbieten. Aber man kann sich Heads und Coreboot natürlich jederzeit selber kompilieren", sagt Suhr. Für das Update müsse nur die Update-Datei auf einen USB-Stick kopiert und der Computer neu gestartet werden. Aus dem Heads-Menü könne dann einfach das Update getriggert werden, erklärt Suhr.
Nitrokey ersetzt nicht nur das Bios des X230-Laptops durch freie Firmware, sondern kümmert sich auch um die Management Engine (ME), eine proprietäre Firmware-Komponente von Intel. Diese hatte in der Vergangenheit immer wieder Sicherheitsprobleme und ist eine Art Black Box auf Computern mit Intel-Chips. "Es gibt derzeit zwei Möglichkeiten, ME zu verhindern", erläutert Suhr. Zum einen könne ein Bit gesetzt werden, das die Ausführung von ME verhindert, zum anderen könne ein großer Teil des ME-Binary-Blobs überschrieben werden. "Am sichersten ist es, beide Methoden zu verwenden und das machen wir auch", sagt Suhr.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
Nitropad im Test: Ein sicherer Laptop, der im Alltag kaum nervt | Verfügbarkeit und Fazit |
Aufgrund der Sicherheitsprobleme mit Intel würde ich mir derzeit keinen Rechner mit...
Wenn dir das nicht behagt, kannst du dir ein Librem von puri.sm besorgen - da hast du...
Und das genau wegen der guten Coreboot-Unterstützung, mir ist nach Basteln. Im Moment...
Und das ist nun Problem vom Projekt? Das schöne ist doch, dass man es nun überhaupt...