Der Hypervisor ist die Firmwareschicht, die die Virtualisierung der eigentlichen Hardware implementiert und kontrolliert. Der Hypervisor umfasst folgende Komponenten:
Eigentlicher Hypervisor, der in Firmware implementiert ist und von den CPUs des Systems unterstützt wird.
Firmwaremodule, die in der Kontrolldomain zur Konfiguration des Hypervisors ausgeführt werden.
Kernel-Module und Daemons, die in I/O-Domains und Servicedomains ausgeführt werden, um virtualisierte I/O zu ermöglichen, sowie die Kernel-Module, die über Logical Domain Channels (LDCs) kommunizieren.
Kernel-Module und Gerätetreiber, die in den Gastdomains ausgeführt werden, um auf virtualisierte I/O-Geräte zuzugreifen, sowie die Kernel-Module, die über LDCs kommunizieren.
Ein Angreifer kann die Kontrolle über Gastdomains oder das ganze System übernehmen, indem die isolierte Laufzeitumgebung durchbrochen wird, die vom Hypervisor bereitgestellt wird. Potenziell kann diese Bedrohung dem System den größten Schaden zufügen.
Ein modularer Systementwurf kann die Isolation verbessern, indem Gastdomains, dem Hypervisor und der Kontrolldomain verschiedene Berechtigungsebenen erteilt werden. Jedes funktionale Modul wird in einem separaten und konfigurierbaren Kernel-Modul, Gerätetreiber oder Daemon implementiert. Diese Modularität erfordert saubere APIs und einfache Kommunikationsprotokolle, um das Gesamtfehlerrisiko zu verringern.
Selbst wenn der Missbrauch eines Fehlers unwahrscheinlich erscheint, kann ein potenzieller Schaden dem Angreifer die Möglichkeit geben, das ganze System zu kontrollieren.
Obwohl Sie die Systemfirmware und BS-Patches direkt von einer Oracle-Website herunterladen können, können diese Patches manipuliert sein. Bevor Sie die Software installieren, müssen Sie die MD5-Prüfsummen der Softwarepakete prüfen. Die Prüfsummen aller herunterladbarer Softwarepakete werden von Oracle veröffentlicht.
Oracle VM Server for SPARC verwendet verschiedene Treiber und Kernel-Module zur Implementierung des gesamten Virtualisierungssystems. Alle Kernel-Module und die meisten Binärdateien, die mit dem Oracle Solaris-BS verteilt werden, haben eine digitale Signatur. Mit dem elfsign-Dienstprogramm prüfen Sie die digitale Signatur für jedes Kernel-Modul und jeden Treiber. Mit dem Oracle Solaris 11 pkg verify-Befehl können Sie die Integrität der Oracle Solaris-Binärdatei prüfen. Siehe auch https://blogs.oracle.com/cmt/entry/solaris_fingerprint_database_how_it
Als erstes müssen Sie die Integrität des elfsign-Dienstprogramms festlegen. Mit dem Basis-Audit- und Reporting-Tool (BART) können Sie die Prüfung der digitalen Signatur automatisieren. In Integrating BART and the Solaris Fingerprint Database in the Solaris 10 Operating System wird beschrieben, wie Sie BART und die Solaris Fingerprint-Datenbank kombinieren, um ähnliche Integritätsprüfungen automatisch durchzuführen. Auch wenn die Fingerprint-Datenbank nicht mehr fortgeführt wird, können die in diesem Dokument beschriebenen Grundlagen noch zur Verwendung von elfsign und BART auf ähnliche Weise übernommen werden.