Der Open-Source-Chip OpenTitan ersetzt proprietäre Vertrauensanker von Intel und ARM.

Der Open-Source-Chip OpenTitan ersetzt proprietäre Vertrauensanker von Intel und ARM.

Gemeinnützige Organisation lowRISC in Zusammenarbeit mit Google und anderen Sponsoren am 5. November 2019 hat Projekt OpenTitan, das als „das erste Open-Source-Projekt zur Schaffung einer offenen, qualitativ hochwertigen Mikrochip-Architektur mit Root of Trust (RoT) auf Hardware-Level“ bezeichnet wird.

OpenTitan auf der RISC-V-Architektur ist ein spezialisierter Mikrochip, der in Servern in Rechenzentren und in anderer Hardware eingesetzt werden soll, wo die Authentizität des Bootvorgangs gewährleistet, die Firmware vor Änderungen geschützt und die Wahrscheinlichkeit von Rootkits ausgeschlossen werden muss: dazu gehören Motherboards, Netzwerkkarten, Router, IoT-Geräte, mobile Gadgets usw.

Natürlich gibt es solche Module in modernen Prozessoren. Beispielsweise ist das Hardware-Modul Intel Boot Guard der Root of Trust in Intel-Prozessoren. Es verifiziert die Authentizität des UEFI BIOS vor dem Start des Betriebssystems durch eine Vertrauenskette. Aber die Frage ist, wie weit wir proprietären Roots of Trust vertrauen können, da wir keine Garantien für das Fehlen von Designfehlern haben und es keine Möglichkeit gibt, dies zu überprüfen? Siehe Artikel „Schrödingers vertrauter Bootvorgang. Intel Boot Guard“ mit der Beschreibung, „wie ein über Jahre hinweg kopierter Produktionsfehler mehrerer Anbieter einem potenziellen Angreifer ermöglicht, diese Technologie zu nutzen, um in einem System ein nicht löschbares (nicht einmal mit einem Programmiergerät) verstecktes Rootkit zu schaffen.“

Die Bedrohung einer Kompromittierung von Geräten in der Lieferkette ist überraschend real: Anscheinend kann jeder Hobby-Elektroniker einen Bug in das Motherboard eines Servers einlöten, wobei er Ausrüstung im Wert von nicht mehr als 200 Dollar verwendet. Einige Experten vermuten, dass „Organisationen mit einem Budget von mehreren Hundert Millionen Dollar dies möglicherweise schon seit vielen Jahren tun“. Obwohl es keine Beweise dafür gibt, ist dies theoretisch möglich.

„Wenn Sie dem Hardware-Bootloader nicht vertrauen können, ist das Spiel verloren, — sagen Gavin Ferris, Mitglied des Vorstands von lowRISC. — Es ist egal, was das Betriebssystem macht – wenn Sie zum Zeitpunkt des Bootens des Betriebssystems kompromittiert sind, ist der Rest nur noch Technik. Es ist mit Ihnen schon vorbei.“

Dieses Problem soll die erste ihrer Art, die offene Hardware-Plattform OpenTitan, lösen (das GitHub-Repository, Dokumentation, Hardware-Spezifikationen). Der Ausstieg aus proprietären Lösungen wird es ermöglichen, die „schwerfällige und unzureichende RoT-Industrie“ zu verändern, meint Google.

Das Unternehmen Google hat mit der Entwicklung von Titan begonnen, nachdem es das Betriebssystem Minix entdeckt hatte, das in die Intel Management Engine (ME) integriert ist. Dieses komplexe Betriebssystem erweiterte auf unvorhersehbare und nicht kontrollierbare Weise die Angriffsfläche. Google versuchte, Intel Management Engine (ME) loszuwerden,aber ohne Erfolg.

Was ist der Vertrauenswurzel?

Jeder Schritt des Systemstartprozesses überprüft die Authentizität des nächsten Schrittes und bildet somit eine Vertrauenskette..

Die Vertrauenswurzel (Root of Trust, RoT) ist eine Hardwareauthentifizierung, die gewährleistet, dass die Quelle der ersten ausführbaren Anweisung in der Vertrauenskette nicht verändert werden kann. RoT bietet grundlegenden Schutz gegen Rootkits. Es ist ein entscheidender Schritt im Startprozess, der am weiteren Start des Systems — vom BIOS bis zum Betriebssystem und den Anwendungen — beteiligt ist. Es muss die Authentizität jedes nachfolgenden Startschrittes überprüfen. Zu diesem Zweck wird in jedem Schritt eine Sammlung von Schlüsseln mit digitaler Signatur verwendet. Einer der populärsten Standards für Hardwareschutzschlüssel ist TPM (Trusted Platform Module, vertrauenswürdiges Plattformmodul).

Der Open-Source-Chip OpenTitan ersetzt proprietäre Vertrauensanker von Intel und ARM.
Einrichtung der Vertrauenswurzel. Oben ist ein fünfstufiger Bootprozess dargestellt, der eine Vertrauenskette bildet und mit dem Bootloader beginnt, der sich im unveränderlichen Speicher befindet. In jedem Schritt wird einöffentlicher Schlüssel verwendet, um die Authentizität des nächsten geladenen Komponents zu überprüfen. Abbildung aus dem Buch von Perry Lee „Architektur des Internet der Dinge“

RoT kann auf verschiedene Arten starten:

  • Laden eines Abbilds und eines Stammzertifikats aus der Firmware oder dem unveränderlichen Speicher;
  • Speichern des Stammzertifikats im einmal programmierbaren Speicher mit Hilfe von Fusionsbits;
  • Laden von Code aus einem geschützten Speicherbereich in ein sicheres Speicherlager.

In verschiedenen Prozessoren ist die Vertrauenswurzel unterschiedlich implementiert. Intel und ARM
unterstützen die folgenden Technologien:

  • ARM TrustZone. ARM verkauft Herstellern von Chips ein proprietäres Silizium-Modul, das die Root of Trust und andere Sicherheitsmechanismen bereitstellt. Dadurch wird der Mikroprozessor von einem unsicheren Kern getrennt; er führt ein Trusted OS aus – ein sicheres Betriebssystem mit klar definiertem Schnittstellenkontakt zu unsicheren Komponenten. Sichere Ressourcen befinden sich im vertrauenswürdigen Kern und sollten so leichtgewichtig wie möglich sein. Der Übergang zwischen Komponenten unterschiedlicher Typen erfolgt über Hardware-Kontextwechsel, wodurch die Notwendigkeit für sichere Software zur Überwachung weggefallen ist.
  • Intel Boot Guard ist ein Hardware-Mechanismus zur Authentifizierung des Initial Boot Blocks durch kryptografische Mittel oder durch einen Messprozess. Zur Prüfung des Initial Boot Blocks muss der Hersteller einen 2048-Bit-Schlüssel generieren, der aus zwei Teilen besteht: einem öffentlichen und einem privaten. Der öffentliche Schlüssel wird durch 'Detonieren' von Fuse-Bits während der Produktion auf der Platine gedruckt. Diese Bits sind einmalig und können nicht geändert werden. Der private Teil des Schlüssels generiert eine digitale Signatur zur anschließenden Authentifizierung des Boot-Prozesses.

Die OpenTitan-Plattform eröffnet die Schlüsselaspekte eines solchen Hardware-Software-Systems, wie in der folgenden Abbildung dargestellt.

Der Open-Source-Chip OpenTitan ersetzt proprietäre Vertrauensanker von Intel und ARM.

OpenTitan-Plattform

Die Entwicklung der OpenTitan-Plattform wird von der gemeinnützigen Organisation lowRISC geleitet. Das Ingenieurteam hat seinen Sitz in Cambridge (Vereinigtes Königreich), und der Hauptsponsor ist Google. Zu den Gründungspartnern zählen die ETH Zürich, G+D Mobile Security, Nuvoton Technology und Western Digital.

Google veröffentlichte eine Ankündigung des Projekts im Unternehmensblog von Google Open Source. Das Unternehmen erklärte, dass OpenTitan bestrebt ist, 'hochwertige Empfehlungen für Design und Integration von RoT für den Einsatz in Servern von Rechenzentren, Speicherlösungen, Peripheriegeräten und vielem mehr zur Verfügung zu stellen.'

Die Root of Trust ist das erste Glied in der Vertrauenskette auf der niedrigsten Ebene im vertrauenswürdigen Berechnungsmodul, dem das System stets vollumfänglich vertraut.

RoT ist entscheidend für Anwendungen, einschließlich Infrastrukturen für öffentliche Schlüssel (PKI). Es bildet die Grundlage für ein Sicherheitssystem, auf dem komplexe Systeme wie IoT-Anwendungen oder Rechenzentren basieren. Daher ist es verständlich, warum Google dieses Projekt unterstützt. Derzeit betreibt Google 19 Rechenzentren auf fünf Kontinenten. Rechenzentren, Speicher und kritische Anwendungen stellen eine umfangreiche Angriffsoberfläche dar, und zum Schutz dieser Infrastruktur hat Google ursprünglich eine eigene Vertrauenskette auf dem Titan-Chip entwickelt.

Proprietärer Titan-Chip für Googles Rechenzentren wurde erstmals im März 2017 auf der Konferenz Google Cloud Next vorgestellt. „Unsere Computer führen eine kryptografische Überprüfung jedes Pakets von Software durch, und entscheiden dann, ob ihnen der Zugriff auf die Netzwerkressourcen gewährt werden soll. Titan wird in diesen Prozess integriert und bietet zusätzliche Schutzschichten“, erklärten Vertreter von Google während dieser Präsentation.

Der Open-Source-Chip OpenTitan ersetzt proprietäre Vertrauensanker von Intel und ARM.
Titan-Chip im Google-Server

Die Architektur von Titan war im Besitz von Google, wird nun aber als öffentliches Gut im Rahmen eines Open-Source-Projekts verfügbar.

Der erste Schritt des Projekts besteht darin, ein logisches Design von RoT auf Chip-Ebene zu erstellen, einschließlich eines Open-Source-Mikroprozessors lowRISC ibex, kryptografischen Prozessoren, einem Hardware-Zufallszahlengenerator, Schlüsselhierarchien und Speichern für nichtflüchtige und flüchtige Speicherung, Schutzmechanismen, Peripheriegeräten und sicheren Boot-Prozessen.

Google sagt, dass OpenTitan auf drei Kernprinzipien basiert:

  • jeder hat die Möglichkeit, die Plattform zu überprüfen und beizutragen;
  • erhöhte Flexibilität durch die Offenlegung eines logisch sicheren Designs, das nicht durch proprietäre Anbieterbeschränkungen blockiert wird;
  • Qualität, die nicht nur durch das Design selbst, sondern auch durch die Referenz-Firmware und Dokumentation gewährleistet wird.

„Die aktuellen Mikrochips mit Vertrauensanker sind sehr proprietär. Sie behaupten, sicher zu sein, aber in Wirklichkeit muss man dies einfach glauben, ohne sie selbst überprüfen zu können“, sagt Dominic Rizzo, Sicherheitsleiter des Google Titan Projekts. „Jetzt gibt es erstmals die Möglichkeit, Sicherheit ohne blinden Glauben an die proprietären Designs der Vertrauensanker zu gewährleisten. Daher ist das Fundament nicht nur stabil, es kann auch überprüft werden.“

Rizzo fügte hinzu, dass OpenTitan als „radikal transparentes Design im Vergleich zu den derzeitigen Gegebenheiten“ betrachtet werden kann.

Laut den Entwicklern sollte OpenTitan keinesfalls als fertiges Produkt betrachtet werden, da die Entwicklung noch nicht abgeschlossen ist. Sie haben die Spezifikationen und das Design absichtlich während der Entwicklungsphase offengelegt, damit jeder es überprüfen, seinen Beitrag leisten und das System vor Beginn der Produktion verbessern kann.

Um mit der Produktion der OpenTitan-Chips zu beginnen, muss man einen Antrag stellen und eine Zertifizierung durchlaufen. Anscheinend sind keine Lizenzgebühren erforderlich.

Quelle: habr.com

60GB SSD 8Gb DDR4