Sichere Entwicklungsumgebung mit VirtualBox, Teil 3 Den virtuellen PC unter VBox absichern
Wenn die virtuelle Maschine für die Softwareentwicklung einmal eingerichtet ist, lässt sie sich jederzeit bei Bedarf starten. Sobald sie läuft, hat sie aber mit den gleichen Sicherheitsproblemen wie ein echter PC zu kämpfen. Wir helfen, diese zu umschiffen.

Virtuelle Maschinen sind PCs in der Box. Das bedeutet aber auch: Neben allen Vorteilen ist eine Entwicklungsumgebung in der virtuellen Maschine auch ein regulärer PC – und der ist für Angreifer natürlich interessant. Zumal Sicherheitslücken sowohl in der zugrundeliegenden VM-Software als auch im Betriebssystem selbst für Angriffspunkte sorgen können.
VirtualBox wird von Oracle regelmäßig aktualisiert und der VBox-Quellcode ist frei verfügbar, weshalb an dieser Front tendenziell wenig Bedarf besteht. Trotzdem ist es selbstredend sinnvoll, eine virtuelle Maschine abzusichern, um für eine sichere Entwicklungsumgebung zu sorgen.
Virtuelle Maschinen per VirtualBox absichern
Zwar bietet VirtualBox keine dedizierten Sicherheitseinstellungen. Trotzdem ist es unabdingbar, sich mit den Einstellungen der Software zu beschäftigen, um ein Maximum an Sicherheit herauszuholen. Dabei sollten vor allem die Netzwerk-Einstellungen unter die Lupe genommen werden: Diese bestimmen, in welcher Form die virtuelle Maschine mit dem Internet, dem Host-Rechner und anderen virtuellen Maschinen kommuniziert.
Im zweiten Teil der Reihe haben wir die Empfehlung gegeben, den Netzwerkadapter in den Bridge-Modus zu schalten, um die VM im Netzwerk wie einen normalen PC ansprechen zu können. Sicherheitstechnisch ist das aber natürlich nicht optimal, hier bietet sich stattdessen der NAT-Modus an, da die VM so innerhalb des Hosts geroutet wird und dementsprechend trotz des Internetzugriffs nicht von außen sichtbar ist.
Mehrere Netzwerk-Modi in VirtualBox
Neben NAT bietet VirtualBox mehrere weitere Netzwerkmodi. Am sichersten ist natürlich, den virtuellen Netzwerkadapter auf „nicht angeschlossen“ zu setzen – dann kann die VM aber weder mit dem LAN noch mit dem WAN kommunizieren und ist ein virtueller Offline-PC. Gerade wer mehrere VMs gleichzeitig auf einem System betreibt – etwa um Netzwerk-Applikationen zu testen – sollte deshalb dafür sorgen, dass die VMs nicht nur online gehen, sondern auch untereinander kommunizieren können.
Dafür bietet sich der Modus „NAT-Netzwerk“ an, der innerhalb von VirtualBox einen virtuellen Router erstellt, der wiederum für die Netzwerkadressübersetzung zuständig ist. Dieser muss zunächst in den VirtualBox-Einstellungen eingerichtet werden. Anschließend können die virtuellen Maschinen über die NAT-Netzwerk-Funktion miteinander und dem Internet kommunizieren, ohne Angreifern einen offensichtlichen Angriffspunkt zu bieten.
Dateiaustausch lieber über Drag & Drop und den Host
Um den Host und das Netzwerk, in dem er sich befindet, gegenüber der virtuellen Maschine abzusichern, ist es übrigens sinnvoll, auf die direkte Einbindung von Netzwerk-Volumes (etwa einer NAS oder einem Server) in VirtualBox zu verzichten. Stattdessen kann es sinnvoll sein, einen Austauschordner auf dem Host-System einzurichten, auf den die virtuellen Maschinen zugreifen können. Dieser wiederum wird dann bei Bedarf vom Host in seinem Netzwerk freigegeben.
Müssen Netzwerk-Volumes direkt für die VM freigegeben werden, ist es sinnvoll, auch hier den Umweg über den Mount des Host-Rechners zu gehen. Bei Bedarf lässt sich die Verbindung im Notfall einfacher kappen. Übrigens: Virtuelle Maschinen mit installierter Gast-Erweiterung unterstützen Drag & Drop – in diesem Fall ist bei Bedarf ganz ohne Netzwerk für den Dateiaustausch gesorgt.
Prinzip der Berechtigungssparsamkeit wahren
Wie jede Software sollte übrigens auch VirtualBox nicht mit Admin- oder gar Root-Privilegien ausgeführt werden. Wer das Tool verwendet, sollte stattdessen ein reguläres Benutzerkonto verwenden. Das stellt sicher, dass auch ein größeres, bislang unentdecktes Leck in der Virtualisierungssoftware keinen unnötigen Schaden anrichten kann.
Ordner und Netzwerk-Laufwerke sollten darüber hinaus sparsam eingehängt werden. Die virtuelle Maschine soll nur die Privilegien besitzen, die sie auch wirklich benötigt. Das gleiche gilt auch für USB-Volumes, den Zugriff auf Laufwerke oder die Remote-Desktop-Funktionen der VM. Zudem sollten innerhalb einer VM nur wirklich benötigte Online-Konten angemeldet werden.
Gemeinsames Clipboard abschalten
Eine dicke Sicherheitslücke, die aber konzeptionell bedingt ist, stellt übrigens die gemeinsame Zwischenablage dar: Ist das Gast-System kompromittiert, kann es schnell passieren, dass zum Beispiel kopierte Passwörter aus Versehen in der VM eingefügt werden und von dort aus dann via Schadsoftware an Computerkriminelle übermittelt werden.
Umgekehrt kann auf diesem Wege auch Schadcode vom Gast auf den Host gelangen. So praktisch eine gemeinsame Zwischenablage zwischen VM und Host ist: Sie sollte deaktiviert sein, sofern der Gastrechner Zugriff auf das Internet hat. Standardmäßig ist die Funktion bei VirtualBox deaktiviert, trotzdem ist es sinnvoll, einen Blick auf das Menü „Geräte -> Gemeinsame Zwischenablage“ zu werfen. Nur, wenn diese deaktiviert ist, ist die gebotene Sicherheit gegeben.
Für VMs gelten die gleichen Sicherheitsmaßnahmen wie für echte PC
Zu guter Letzt noch ein genereller Hinweis: Gast-Systeme sollten, genau wie der Host-Rechner, immer aktuell gehalten werden. Das bedeutet, dass zur üblichen Systempflege des Arbeitsrechners auch die regelmäßige Pflege der VMs gehört. Dazu müssen die virtuellen Maschinen hochgefahren und anschließend über die integrierte Update-Funktion aktualisiert werden.
So naheliegend und praktisch es auch erscheinen mag: Veraltete, vom Hersteller aufgegebene und damit lückenhafte Software wie Windows XP oder manche beliebte Anwendungssoftware sollte nicht – oder zumindest nur mit der in der virtuellen Maschine ausgeführt werden. Denn dadurch ergeben sich Sicherheitslücken in der VM, die möglicherweise auf das Host-System überschwappen.
Übrigens: Gerade für den Windows-Betrieb ist es sinnvoll, das Gastgeber-System mit Linux zu betreiben – und umgekehrt. So ist zumindest schon einmal ausgeschlossen, dass ein auf das eine Betriebssystem angepasster Exploit oder Schadcode sich auf das andere ausbreitet.
macOS als VirtualBox-Host
Übrigens: Nicht nur aus Sicherheitsaspekten, sondern auch in funktionaler Hinsicht bietet sich macOS als VirtualBox-Gastgeber-System an: Einerseits, weil so Linux- und Windows-Systeme dadurch besser abgekapselt sind und andererseits, weil sich für Entwicklungsbetrieb auch ein macOS-Gastsystem einrichten lässt. Ein entsprechendes Apple-System unter Windows und Linux einzurichten ist hingegen mit erheblichem Aufwand verbunden. Wer hingegen nur für Windows oder Linux entwickelt, kann natürlich getrost auf die Anschaffung eines teuren Mac-Systems verzichten.
(ID:46545740)