Bundesamt für Sicherheit in der Informationstechnik

G 5.150 Kompromittierung des Hypervisor virtueller IT-Systeme

Der Hypervisor ist die zentrale Komponente eines Virtualisierungsservers, er steuert alle auf diesem Virtualisierungsserver ausgeführten virtuellen Maschinen. Er teilt ihnen Prozessor- und Hauptspeicherressourcen zu und verteilt die zur Verfügung stehende Rechenzeit auf die virtuellen Maschinen. Des Weiteren verwaltet er den Zugriff der virtuellen IT -Systemen auf das Netz und die Speicher-Ressourcen. Ein erfolgreicher Angriff auf diese Komponente bedeutet den Verlust der Kontrolle über alle virtuellen IT-Systeme, die im Kontext dieses Hypervisors ausgeführt werden. Ein Angriff auf den Hypervisor kann im Wesentlichen folgendermaßen ausgeführt werden:

  • Manipulation der CPU -Register, die bei Prozessoren mit integrierter Virtualisierungsunterstützung die Virtualisierungsfunktionen steuern. Mittels solcher Angriffe kann beispielsweise festgestellt werden, ob sich der Angreifer in einer virtuellen Umgebung befindet. Bei einigen Virtualisierungsprodukten kann über bestimmte Prozessorbefehle der Hypervisor selbst virtualisiert werden und so unter die Kontrolle eines Schadprogramms gebracht werden. Dies ist sogar aus einem virtuellen IT-System heraus möglich.
  • Ausnutzung eines Fehlers in der Implementierung der Ressourcen, die den virtuellen IT-Systemen durch den Hypervisor zur Verfügung gestellt werden. Dies kann beispielsweise emulierte Netzwerkkarten, Massenspeichergeräte oder Grafikkarten betreffen. Bei einigen Virtualisierungsprodukten werden auch Kernkomponenten wie Prozessor und Hauptspeicher emuliert. Die Geräteemulationen werden durch die virtuellen IT-Systeme verwendet, um die entsprechenden Funktionen des Hypervisors bzw. des Hostbetriebssystems zu nutzen.
  • Als zentrale Komponente übernimmt der Hypervisor eine Reihe von sicherheitskritischen Funktionen einer Virtualisierungslösung. Gelingt es einem Angreifer, den Hypervisor zu kompromittieren, ist dadurch der sichere Betrieb der jeweiligen virtuellen IT-Systeme und der jeweiligen Virtualisierungsserver in hohem Maße gefährdet. Angreifer können versuchen, auf diesem Wege virtuelle IT-Systeme zu manipulieren oder zu stören. Unter Umständen können dadurch auch vertrauliche Informationen an Unbefugte gelangen. Schwachstellen im eingesetzten Hypervisor-Produkt können deshalb erhebliche Risiken für die Informationsverarbeitung mit sich bringen.
  • Einige Virtualisierungssysteme beinhalten zudem Funktionen zur Kommunikation zwischen dem Hypervisor und den virtuellen IT-Systemen. Diese werden in der Regel durch Gastwerkzeuge realisiert, die im virtuellen IT-System installiert werden. Um die Kommunikation zwischen den Gastwerkzeugen und dem Hypervisor zu ermöglichen, besitzt jedes virtuelle IT-System einen Kommunikationskanal für die Gastwerkzeuge zum Hypervisor. Hierzu existiert zum Beispiel in virtuellen IT-Systemen auf der Basis der Produkte des Herstellers VMware ein spezieller DMA -Kanal, der einen solchen Kanal öffnet, wenn die bestimmte Prozessorregister mit bestimmten Werten geladen werden. Dieser Weg kann nicht ausschließlich durch die Gastwerkzeuge sondern auch durch Schadprogramme genutzt werden. Kann ein Angreifer diesen Kommunikationskanal besetzen, hat er die Möglichkeit, Sicherheitslücken oder Designschwächen des Hypervisors auszunutzen, um die Kontrolle über den Hypervisor zu erhalten oder eigenen Code im Kontext des Hypervisors auszuführen. Hierüber kann der Angreifer andere virtuelle IT-Systeme unter seine Kontrolle bekommen. Da der Hypervisor alle Funktionen eines virtuellen IT-Systems überwacht und steuert, können über den Hypervisor Prozessorfunktionen oder Hauptspeicherinhalte des virtuellen IT-Systems direkt manipuliert werden, um Schadprogramme in das virtuelle IT-System einzubringen. Dies erfordert nicht notwendigerweise eine ausnutzbare Sicherheitslücke in dem über den Hypervisor angegriffenen virtuellen IT-System.

Beispiel:

Ein Rechenzentrumsdienstleister betreibt IT-Systeme für mehrere Kunden, die in einem Konkurrenzverhältnis zu einander stehen. Um die Kosten für den Systembetrieb für seine Kunden zu senken und weiterhin konkurrenzfähig zu sein, führt er eine Virtualisierungslösung in seinen Rechenzentrumsbetrieb ein. Er informiert seine Kunden darüber, dass ihre Systeme nun als virtuelle IT-Systeme betrieben werden. Da das Netz des Rechenzentrumsdienstleisters so aufgebaut ist, dass zwischen den IT-Systemen unterschiedlicher Kunden keine Kommunikationsbeziehungen über das Netz aufgebaut werden können, garantiert der Dienstleister weiterhin, dass die Vertraulichkeit der Daten der Kunden gewährleistet ist. Er überprüft dies durch regelmäßige Audits und räumt seinen Kunden ebenfalls Auditmöglichkeiten ein.

Ein Datenbankadministrator einer der Kunden hat die Möglichkeit, sich auf den IT-Systemen, die vom Rechenzentrumsdienstleister betrieben werden, interaktiv anzumelden. Er besitzt auf dem Datenbanksystem Administratorrechte. In der Hoffnung, Informationen über einen Mitbewerber seines Arbeitgebers zu gewinnen, startet er nun ein Schadprogramm, dass es ihm durch einen Fehler in der Grafikkartenemulation der Hypervisors ermöglicht, eigenen Code im Kontext des Hypervisors auszuführen. Dieser Code ermöglicht ihm die Überwachung aller Hypervisor-Funktionen. Dadurch kann er ein Datenbanksystem eines anderen Kunden des Rechenzentrumsdienstleisters als eines identifizieren, dass einem direkten Mitbewerber gehört. Über die Massenspeicherschnittstelle des Hypervisors gelingt es ihm, aus der Datenbank dieser virtuellen Maschine Daten auszulesen und Inhalte zu verändern. Hierdurch wird die Produktion des Konkurrenten empfindlich gestört und es entsteht dem Unternehmen des Administrators ein Wettbewerbsvorteil.

Stand: 12. EL Stand 2011