Einige Einstellungen von VMware Tools ziehen möglicherweise Sicherheitsrisiken nach sich. VMware Tools ermöglicht Ihnen beispielsweise, virtuelle Geräte, wie z. B. serielle und parallele Ports, mit virtuellen Maschinen zu verbinden. Ein angeschlossenes Gerät könnte als mögliches Angriffsziel dienen. Um eine virtuelle Maschine abzusichern und die Sicherheitsrisiken so weit wie möglich zu verringern, deaktivieren Sie die VMware Tools-Funktionen, die möglicherweise für Sicherheitsbedrohungen anfällig sind.

Weitere Informationen über das sichere Bereitstellen von VMware vSphere in einer Produktionsumgebung, einschließlich der Sicherheitsempfehlungen für Hosts, virtuelle Maschinen, Managementkomponenten und eine Netzwerkinfrastruktur, finden Sie im vSphere Hardening Guide. VMware Tools-Einstellungen beziehen sich nur auf den Aspekt der Bereitstellung von virtuellen Maschinen.

Virtuelle Maschinen werden in wenigen Dateien eingekapselt. Eine der wichtigsten Dateien ist die Konfigurationsdatei (.vmx-Datei). Diese Datei regelt die Leistung der virtuellen Hardware und andere Einstellungen. Sie können verschiedene Methoden verwenden, um die Konfigurationseinstellungen anzusehen und zu ändern:

  • Öffnen Sie die .vmx-Datei direkt in einem Texteditor.

  • Verwenden Sie vSphere Web Client zum Bearbeiten der Einstellungen der VM. Im vSphere Web Client ist die Bearbeitung dieser Konfigurationsparameter eine erweiterte Option im VM-Dialogfeld Einstellungen bearbeiten.

  • Verwenden Sie den vSphere Client zum Bearbeiten der Einstellungen der VM. Im vSphere Client ist die Bearbeitung dieser Konfigurationsparameter eine erweiterte Option im VM-Dialogfeld Einstellungen bearbeiten.

  • Verwenden Sie ein vSphere-API-basiertes Tool, wie z. B. Power CLI, um die .vmx-Parameter anzuzeigen und zu ändern.

Nachdem Sie eine Einstellung geändert haben, wird die Änderung erst wirksam, wenn Sie die virtuelle Maschine neu gestartet haben.

Überprüfen Sie die folgende Liste von möglichen Sicherheitsbedrohungen und die entsprechenden Parameter von VMware Tools, die in der .vmx-Datei der virtuellen Maschine festgelegt werden sollen. Die Standardwerte für viele dieser Parameter sind bereits zum Schutz virtueller Maschinen vor diesen Bedrohungen eingestellt.

Bedrohungen, die mit nicht privilegierten Benutzerkonten einhergehen

Festplattenverkleinerungsfunktion

Durch das Verkleinern einer virtuellen Festplatte wird nicht verwendeter Speicherplatz auf der Festplatte wieder verfügbar gemacht. Benutzer und Prozesse ohne Root- oder Administratorrechte können diesen Vorgang aufrufen. Da der Festplattenverkleinerungsvorgang geraume Zeit in Anspruch nehmen kann, kann das wiederholte Aufrufen des Festplattenverkleinerungsvorgangs eine Dienstverweigerung („Denial of Service“) verursachen. Die virtuelle Festplatte steht während des Verkleinerungsvorgangs nicht zur Verfügung. Mit den folgenden .vmx-Einstellungen können Sie das Verkleinern von Festplatten deaktivieren:

isolation.tools.diskWiper.disable = "TRUE"
isolation.tools.diskShrink.disable = "TRUE"

Funktion zum Kopieren und Einfügen

Standardmäßig ist die Möglichkeit, Texte, Grafiken und Dateien zu kopieren und einzufügen, sowie die Möglichkeit, Dateien per Ziehen und Ablegen zu verschieben, deaktiviert. Wenn diese Funktion aktiviert ist, können Sie Rich-Text und je nach VMware-Produkt auch Grafiken und Dateien in den Zwischenspeicher kopieren und diese in das Gastbetriebssystem einer virtuellen Maschine einfügen. Das heißt, sobald das Fenster einer virtuellen Maschine den Fokus erhält, können nicht privilegierte Benutzer und Prozesse, die in der virtuellen Maschine ausgeführt werden, auf die Zwischenablage des Computers zugreifen, auf dem das Konsolenfenster ausgeführt wird. Behalten Sie zur Vermeidung von Risiken mit dieser Funktion die folgenden .vmx-Einstellungen bei, die das Kopieren und Einfügen deaktivieren:

isolation.tools.copy.disable = "TRUE"
isolation.tools.paste.disable = "TRUE"

Bedrohungen bei Verwendung von virtuellen Geräten

Verbinden und Ändern von Geräten

Standardmäßig ist die Möglichkeit, Geräte zu verbinden und zu trennen, deaktiviert. Wenn diese Funktion aktiviert ist, können Benutzer und Prozesse ohne Root -oder Administratorrechte Geräte, wie z. B. Netzwerkadapter und CD-ROM-Laufwerke, anschließen und Geräteeinstellungen ändern. Das heißt, ein Benutzer kann ein getrenntes CD-ROM-Laufwerk anschließen und auf die vertraulichen Daten auf dem Medium zugreifen. Ein Benutzer kann auch einen Netzwerkadapter trennen, um die virtuelle Maschine vom Netzwerk zu isolieren, was zu einer Dienstverweigerung („Denial of Service“) führt. Behalten Sie zur Vermeidung von Risiken mit dieser Funktion die folgenden .vmx-Einstellungen bei, wodurch die Möglichkeit deaktiviert wird, Geräte zu verbinden bzw. zu trennen und die Geräteeinstellungen zu ändern:

isolation.device.connectable.disable = "TRUE"
isolation.device.edit.disable = "TRUE"

Virtual Machine Communication Interface (VMCI) für ESXi 5.0 und früher

Diese Einstellung gilt für virtuelle Maschinen der Version ESXi 5.0 und früher. Sie gilt nicht für virtuelle Maschinen ab Version ESXi 5.1.

Wenn VMCI nicht eingeschränkt ist, kann eine virtuelle Maschine andere virtuelle Maschinen erkennen und von allen anderen virtuellen Maschinen erkannt werden, bei denen die gleiche Option innerhalb desselben Hosts aktiviert ist. Maßgeschneiderte Softwareprodukte, die diese Schnittstelle verwenden, haben möglicherweise unerwartete Schwachstellen, die ausgenutzt werden können. Darüber hinaus könnte eine virtuelle Maschine durch Registrieren der virtuellen Maschine feststellen, wie viele andere virtuellen Maschinen sich innerhalb desselben ESX/ESXi-Systems befinden. Diese Informationen könnten zu böswilligen Zwecken missbraucht werden. Die virtuelle Maschine kann anderen virtuellen Maschinen innerhalb des Systems ausgesetzt sein, solange mindestens ein Programm mit der VMCI-Socket-Schnittstelle verbunden ist. Mit der folgenden .vmx-Einstellung können Sie VMCI einschränken:

vmci0.unrestricted = "FALSE"

Bedrohungen, die mit dem Informationsfluss von virtuellen Maschinen einhergehen

Konfigurieren der Anzahl der Protokolldateien für die virtuelle Maschine

Je nach Ihren Protokolleinstellungen wird immer dann, wenn die alte Protokolldatei größer als 100 KB ist, eine neue Protokolldatei erstellt. Das unkontrollierte Protokollieren kann zu einer Dienstverweigerung („Denial of Service“) führen, falls der Festplattenspeicher des Datenspeichers aufgebraucht ist. VMware empfiehlt, 10 Protokolldateien zu speichern. Standardmäßig beträgt die maximale Größe für Protokolldateien 100 KB und Sie können diesen Wert nicht auf der Ebene der virtuellen Maschine ändern. Mit der folgenden .vmx-Einstellung können Sie die Anzahl der Protokolldateien festlegen:

vmx.log.keepOld = "10"

Sie können die Anzahl der Protokolldateien für alle virtuellen Maschinen auf einem Host beschränken, indem Sie die Datei /etc/vmware/config bearbeiten. Wenn die Eigenschaft log.KeepOld nicht in der Datei definiert ist, können Sie sie hinzufügen. Um zum Beispiel zehn Protokolldateien für jede virtuelle Maschine zu behalten, fügen Sie Folgendes zu /etc/vmware/config hinzu:

vmx.log.keepOld = "10"

Sie können auch ein PowerCLI-Skript verwenden, um diese Eigenschaft für alle virtuellen Maschinen auf einem Host zu ändern.

Eine noch extremere Strategie besteht darin, für die virtuelle Maschine das Protokollieren ganz zu deaktivieren. Durch das Deaktivieren der Protokollierung werden die Fehlersuche und die technische Unterstützung schwieriger. Ziehen Sie das Deaktivieren der Protokollierung also nur dann in Betracht, wenn sich die Rotation der Protokolldateien als unzureichend erweist. Mit der folgenden .vmx-Einstellung können Sie das Protokollieren ganz deaktivieren:

logging = "FALSE"

.vmx-Dateigröße

Standardmäßig ist die Konfigurationsdatei auf eine Größe von 1 MB beschränkt, da eine unkontrollierte Dateigröße zu einer Dienstverweigerung („Denial of Service“) führen kann, falls der Speicherplatz auf dem Datenspeicher aufgebraucht ist. Informationsmeldungen werden manchmal von der virtuellen Maschine an die .vmx-Datei gesendet. Diese „setinfo“-Nachrichten definieren Merkmale oder Bezeichner von virtuellen Maschinen, indem Name-Wert-Paare in die Datei eingefügt werden. Möglicherweise müssen Sie die Größe der Datei erhöhen, wenn große Mengen an benutzerdefinierten Informationen in der Datei gespeichert werden müssen. Der Eigenschaftsname lautet tools.setInfo.sizeLimit. Der Wert wird in KB angegeben. Behalten Sie die folgende .vmx-Einstellung bei:

tools.setInfo.sizeLimit = "1048576"

Senden von Leistungsindikatoren an PerfMon

Für Microsoft Windows-Gastbetriebssysteme können Sie die Leistungsindikatoren für CPU und Arbeitsspeicher virtueller Maschinen in PerfMon integrieren. Diese Funktion stellt detaillierte Informationen über den physischen Host bereit, der dem Gastbetriebssystem zur Verfügung steht. Ein Widersacher könnte diese Informationen dazu benutzen, weitere Angriffe auf den Host vorzubereiten. Standardmäßig ist diese Funktion deaktiviert. Behalten Sie die folgende .vmx-Einstellung bei, um zu verhindern, dass Hostinformationen an die virtuelle Maschine gesendet werden:

tools.guestlib.enableHostInfo = "FALSE"

Diese Einstellung blockiert einige, aber nicht alle Metriken. Wenn Sie diese Eigenschaft auf FALSE setzen, werden die folgenden Metriken blockiert:

  • GUESTLIB_HOST_CPU_NUM_CORES

  • GUESTLIB_HOST_CPU_USED_MS

  • GUESTLIB_HOST_MEM_SWAPPED_MB

  • GUESTLIB_HOST_MEM_SHARED_MB

  • GUESTLIB_HOST_MEM_USED_MB

  • GUESTLIB_HOST_MEM_PHYS_MB

  • GUESTLIB_HOST_MEM_PHYS_FREE_MB

  • GUESTLIB_HOST_MEM_KERN_OVHD_MB

  • GUESTLIB_HOST_MEM_MAPPED_MB

  • GUESTLIB_HOST_MEM_UNMAPPED_MB

In vSphere nicht freigelegte Funktionen, die Schwachstellen verursachen können

Da virtuelle VMware-Maschinen in vielen VMware-Produkten zusätzlich zu vSphere ausgeführt werden, gelten einige VM-Parameter in einer vSphere-Umgebung nicht. Obwohl diese Funktionen nicht in den vSphere-Benutzerschnittstellen erscheinen, wird die Anzahl der Vektoren, über die ein Gastbetriebssystem auf einen Host zugreifen könnte, reduziert, wenn sie deaktiviert werden. Verwenden Sie die folgende .vmx-Einstellung zum Deaktivieren dieser Funktionen:

isolation.tools.unity.push.update.disable = "TRUE"
isolation.tools.ghi.launchmenu.change = "TRUE"
isolation.tools.ghi.autologon.disable = "TRUE"
isolation.tools.hgfsServerSet.disable = "TRUE"
isolation.tools.memSchedFakeSampleStats.disable = "TRUE"
isolation.tools.getCreds.disable = "TRUE"