Virtual Environment Security Baseline Empfehlungen

Virtual Environment Security Baseline Empfehlungen

Andrea Covello
von Andrea Covello
Lesezeit: 11 Minuten

Als ich in den Jahren 2002 und 2003 damit begonnen habe, meine Produktionsumgebung zu virtualisieren, vertrauten die Menschen dieser neuen Technologie nicht und (wenn wir ehrlich sind) verstanden sie selbige auch nicht. Daher musste ich grosse Mühen auf mich nehmen, um die Vorteile einer virtuellen Umgebung zu erklären. Mein bestes Argument dabei war stets das folgende: Ich zeigte auf, wie es funktioniert. Nun, ich denke, ich muss das nicht mehr tun.

Dennoch gibt es Bedenken wenn es um die Sicherheit eines Virtual Environment geht. Sehen wir uns folgende Grafik an.

Structure of a Virtual Environment

Die Virtualisation fügt eine neue Ebene hinzu, die neue Verwundbarkeiten mit sich bringt (denn es handelt sich eigentlich nur um mehr Software-Code, und wir wissen alle, was das bedeutet). Daher müssen wir uns das stets bewusst machen und die nötigen Vorkehrungen im Sicherheitsbereich treffen. Diese Vorkehrungen werden dann umso wichtiger, wenn wir uns in Hochrisikoumgebungen bewegen, wie zum Beispiel in einer DMZ.

Anforderungen an Virtual Environments

Die Details des Sicherheitsdesigns einer virtuellen Umgebung lasse ich aussen vor, da diese sich je nach Zweck stark voneinander unterscheiden. Auch lasse ich die Anforderungen an die Sicherheit aussen vor. Ich möchte aber über alles, was unter der virtuellen Umgebung liegt, reden. Allerdings muss vorausgeschickt werden, dass ein sicheres Operating System für unseren Fall eine Gegebenheit ist. Für die Schaffung eines solchen gibt es unzählige Guidelines.

Was ich hervorheben möchte, sind die empfohlenen Massnahmen, die eine virtuelle Umgebung sicher machen. Dieses Schema soll beim Verständnis helfen.

Security Requirements

Besonders sollte auf die neue Administrations-Umgebung geachtet werden. Ebenfalls sollte der Virtual Network Layer besondere Aufmerksamkeit geschenkt werden. Aus dem Bild geht bereits eine Empfehlung klar hervor:

Eine separate Administrations-Umgebung ist Pflicht.

Mehrere Computer von einem zentralen Stützpunkt mit besonderen administrativen Pfaden zu betreuen macht die separate Administrationsumgebung zum klaren Ziel von Angriffen. Weshalb sollte ich mehrere System angreifen, wenn ich alle Systeme mit einem Angriff treffen kann? Daher ist diese Umgebung der kritische Punkt in der Sicherung des gesamten Virtual Environment. Folgende Punkte sollten dabei sichergestellt sein:

Sehen wir uns nun die neu entstandenen Ziele in grafischer Form an:

New Attack Areas

Bereich Komponenten Angriff
1 VMtools (Client management API) VM Jumping, Guest Hopping oder Hypervisor DoS Attacks
2 VM management (Host management API) Hypervisor DoS
3 Hypervisor (Virtual Machine Monitor) Hypervisor Escape, Management Privilege Escalation
4 VM management infrastructure Management Tools Unauthorized Access, Privilege Escalation & DoS

Die Angriffe 1 bis 2 sind nicht besonders oft anzutreffen, aber die Angriffe auf die Administrations-Infrastruktur sind wohlbekannt und verwenden bereits bekannte Pfade. Dies führt zu folgender Empfehlung:

Das Virtual Environment muss immer up to date sein. Dies beinhaltet die Management-Infrastruktur.

Es ist unabdingbar, dass die Umgebung stets gepatcht wird. Und wenn das nicht möglich sein sollte sind zwingend Workarounds zu implementieren. Dies können unter anderem strikte Konfigurationen und Einstellungen sein, damit das Risiko auf ein akzeptables Level gestuft werden kann.

Anforderungen an eine virtuelle Umgebung in einer DMZ Aufmerksamkeit sollte auch den Hochrisiko-Umgebungen, den sogenannten DMZs, geschenkt werden. Folgende Aspekte sind in einer DMZ Pflicht:

Recommended VMware Baseline for DMZ

Es ist nun an der Zeit etwas praktisches Wissen in die Diskussion zu bringen. Dazu zitiere ich einen Guide der Website www.vmware.com, der für unsere virtuelle DMZ sinnvoll ist.

Hypervisor
Parameter Beschreibung Wert
VirtualCenter.VimPasswordExpirationInDays Ensure that vpxuser auto-password change meets policy 90 days
Configure the ESXi host firewall to restrict access to services running on the host site specific
Configure NTP time synchronization /etc/ntp.conf site specific
Ensure proper SNMP configuration /etc/vmware/snmp.xml site specific
Do not use default self-signed certificates for ESXi communication
Disable DCUI to prevent local administrative control stopped
Disable ESXi Shell unless needed for diagnostics or troubleshooting stopped
Disable SSH stopped
Enable lockdown mode to restrict remote access enabled
Verify no unauthorized kernel modules are loaded on the host
Configure persistent logging for all ESXi host Syslog.global.logDir log directory
Configure remote logging for ESXi hosts Syslog.global.logHost syslog-server
Zero out VMDK files prior to deletion
Virtual Machines (VMtools)
Parameter Beschreibung Wert
Generic For directly accessed VM systems like DNS, SMTP & WEB server don’t install VMtools at all.
vmci0.unrestricted Disable VM-to-VM communication through VMCI false
RemoteDisplay.maxConnections Limit sharing of console connections 2
floppyX.present Disconnect unauthorized devices false
ideX:Y.present Disconnect unauthorized devices false
parallelX.present Disconnect unauthorized devices false
serialX.present Disconnect unauthorized devices false
usb.present Disconnect unauthorized devices false
isolation.device.connectable.disable Prevent unauthorized removal, connection and modification of devices. true
isolation.device.edit.disable Prevent unauthorized removal, connection and modification of devices. true
isolation.tools.copy.disable Explicitly disable copy/paste operations true
isolation.tools.dnd.disable Explicitly disable copy/paste operations true
isolation.tools.setGUIOptions.enable Explicitly disable copy/paste operations false
isolation.tools.paste.disable Explicitly disable copy/paste operations true
isolation.tools.ghi.autologon.disable Disable certain unexposed features true
isolation.bios.bbs.disable Disable certain unexposed features true
isolation.tools.getCreds.disable Disable certain unexposed features true
isolation.tools.ghi.launchmenu.change Disable certain unexposed features true
isolation.tools.memSchedFakeSampleStats.disable Disable certain unexposed features true
isolation.tools.ghi.protocolhandler.info.disable Disable certain unexposed features true
isolation.ghi.host.shellAction.disable Disable certain unexposed features true
isolation.tools.unity.disableDisable certain unexposed features true
isolation.tools.unityInterlockOperation.disable Disable certain unexposed features true
isolation.tools.unity.taskbar.disable Disable certain unexposed features true
isolation.tools.unityActive.disable Disable certain unexposed features true
isolation.tools.unity.windowContents.disable Disable certain unexposed features true
isolation.tools.unity.push.update.disable Disable certain unexposed features true
isolation.tools.vmxDnDVersionGet.disable Disable certain unexposed features true
isolation.tools.guestDnDVersionSet.disable Disable certain unexposed features true
isolation.tools.autoInstall.disable Disable tools auto install true
isolation.tools.vixMessage.disable Disable VIX messages from the VM true
Virtual Network
Parameter Beschreibung Wert
isolate-mgt-network-vlan Ensure that vSphere management traffic is on a restricted network
isolate-storage-network-vlan Ensure that IP-based storage traffic is isolated
isolate-vmotion-network-vlan Ensure that vMotion traffic is isolated
no-unused-dvports Ensure that there are no unused ports on a distributed virtual port group
reject-forged-transmit-dvportgroup Ensure that the Forged Transmits policy is set to reject. reject
mac-change-dvportgroup Ensure that the MAC Address Change policy is set to reject reject
promiscuous-mode-dvportgroup Ensure that the Promiscuous Mode policy is set to reject reject
no-native-vlan-1 Ensure that port groups are not configured to the value of the native VLAN
no-reserved-vlans Ensure that port groups are not configured to VLAN values reserved by upstream physical switches
no-vgt-vlan-4095 Ensure that port groups are not configured to VLAN 4095 except for Virtual Guest Tagging (VGT)
verify-vlan-id Ensure that all virtual switch VLAN’s are fully documented and have all required and only required VLANs
vswitcht-forged-transmit Ensure that the Forged Transmits policy is set to reject reject
vswitch-mac-changes Ensure that the MAC Address Change policy is set to reject reject
vswitch-promiscuous-mode Ensure that the Promiscuous Mode policy is set to reject reject

Durch die Anwendung dieser Empfehlungen und im steten Bewusstsein, dass Sicherheit ein Prozess ist, sowohl dem Gedanken dass jeder Zugriff überwacht und authentisiert werden sollte, sollten Sie keine allzu grosse Gefahr laufen und eine sichere virtuelle DMZ betreiben.

Über den Autor

Andrea Covello

Andrea Covello ist seit den 1990er Jahren im Bereich der Informationssicherheit tätig. Seine Schwerpunkte liegen traditionell im Engineering, wobei er als Spezialist im Bereich Windows-Sicherheit, Firewalling und Virtualisierung gilt.

Sie wollen die Sicherheit Ihrer Firewall prüfen?

Unsere Spezialisten kontaktieren Sie gern!

×
Security Testing

Security Testing

Tomaso Vasella

Active Directory-Zertifikatsdienste

Active Directory-Zertifikatsdienste

Eric Maurer

Fremde Workloadidentitäten

Fremde Workloadidentitäten

Marius Elmiger

Active Directory-Zertifikatsdienste

Active Directory-Zertifikatsdienste

Eric Maurer

Sie wollen mehr?

Weitere Artikel im Archiv

Sie brauchen Unterstützung bei einem solchen Projekt?

Unsere Spezialisten kontaktieren Sie gern!

Sie wollen mehr?

Weitere Artikel im Archiv