competencies_TrustedGRUB

TrustedGRUB

Die meisten Angriffe auf heutige Computersysteme richten sich in der Regel gegen das laufende Betriebssystem (OS). Während das OS bereits ausgeführt wird, besteht zwar die Möglichkeit, mit gängigen Sicherheitsmaßnahmen wie Firewalls oder Anti-Malware-Software die Angriffsfläche zu reduzieren, jedoch können diese Anwendungen erst wirksam werden, nachdem sie gestartet wurden. Wie aber lässt sich identifizieren, ob die auf dem Computer ausgeführte Software korrekt geladen wurde und wie kann man sicher stellen, dass diese nicht vor der eigentlichen Ausführung manipuliert wurde? Mittlerweile existieren zahlenmäßig viele Angriffe, welche als Ziel bereits den Bootloader des Betriebssystems oder sogar das BIOS haben. Um diesen Angriffen entgegen zu wirken, hat die „Trusted Computing Group“ (TCG) Methoden und Funktionen spezifiziert, die es einem Anwender erlauben, die auf dem PC zu startende Software noch vor der eigentlichen Ausführung zu messen. Dieses Verfahren wird mit „Trusted Boot“ bezeichnet und bedeutet, dass alle am Bootvorgang beteiligten Komponenten vor der Ausführung derart gemessen werden, dass entfernte Stellen sie verifizieren können. Die Messergebnisse werden an geeigneter Stelle sicher protokolliert.

Heutige Business-PCs und Laptops sind in der Regel mit einem „Trusted Platform Module“ (TPM) ausgestattet, einem von der „Trusted Computing Group“ (TCG) spezifizierten manipulationssicheren Chip, welcher in der Regel fest mit der PC-Plattform verbunden ist. Eine solche Plattform ist zusätzlich um Komponenten ergänzt, die es ermöglichen, mit Hilfe des TPMs eine Vertrauenskette über die geladene Software zu erstellen. Da die Vertrauenskette jedoch mit Einschalten des PCs beginnen muss, sind sowohl Erweiterungen im BIOS als auch im Bootloader nötig, um die Kette nicht zu unterbrechen.

TrustedGRUB ist eine Erweiterung des Open-Source Bootloaders GNU GRUB, der in einer Kooperation von der Sirrix AG und der Ruhr-Universität Bochum entwickelt worden ist. Der Bootloader wurde dabei um Funktionen ergänzt, wie sie durch das von der Trusted Computing Group (TCG) spezifizierte Trusted Platform Module (TPM) zur Verfügung gestellt werden.

Die Hauptfunktionalität besteht darin, dass der TrustedGRUB die Binärkonfiguration der zu ladenden Betriebssystem-Module mittels einer SHA-1 Hashfunktion misst und die Hash-Ergebnisse in sogenannte "Platform Configuration Registers" (PCR) des TPM speichert. Die so erhaltenen Hashwerte können dann von lokalen oder entfernten Systemen benutzt werden, um die Konfiguration der gemessenen Plattform zu überprüfen.

TrustedGRUB ist als Open Source Software auf Sourceforge veröffentlicht und funktioniert mit allen gängigen TPMs der Version 1.1b und 1.2.

ruhruni