Qubes OS: Dieses sichere Desktop-Betriebssystem schützt vor Industrie-Spionage und Hacking-Angriffen
Das Open-Source-Projekt Qubes OS bietet als hochsicheres Desktop-Betriebssystem eine Lösung für diese Herausforderungen und richtet sich an professionelle Nutzer wie Journalisten, Forschungseinrichtungen, von Industriespionage bedrohten Unternehmen, Menschenrechtsaktivisten oder Behörden und wird von IT-Security Experten wie Eduard Snowden eingesetzt.
Die auf Sicherheit fokussierte Linux Distribution Qubes OS nutzt virtuelle Maschinen (VMs), um einzelne Desktop-Anwendungen und deren Daten voneinander zu isolieren. Wird eine Anwendung, wie beispielsweise der Browser sowie das Betriebssystem seiner VM kompromittiert, kann die Malware nicht auf die Daten anderer Anwendungen zugreifen, da diese in eigenen VMs betrieben werden. Diese Methode wird auch von Cloud-Anbietern verwendet - die Daten in der Cloud-Instanz (VM) von Kunde A sind vor Zugriffen aus den VMs von Kunde B geschützt, selbst wenn sie auf der gleichen physischen Hardware betrieben werden.
Was unterscheidet Qubes OS von herkömmlichen Betriebssystemen?
Unter herkömmlichen Desktop-Betriebssystemen wie Windows, Ubuntu Linux oder macOS laufen alle Desktop-Anwendungen mit den Berechtigungen des gleichen Benutzerkontos, mit dem Sie sich beim Hochfahren des Computers anmelden. Wenn Sie beispielsweise eine Website mit Ihrem Browser besuchen oder einen PDF-Anhang mit Ihrem E-Mail-Client Programm öffnen, kann eine Sicherheitslücke in Ihrem Browser oder PDF-Viewer ausgenutzt werden, um diese Anwendungen zu infizieren. Da der Browser oder PDF-Viewer mit den gleichen Berechtigungen wie alle anderen Programme ausgeführt wird, kann die Malware ggf. auf alle anderen Daten zugreifen. Im schlimmsten Fall kann sie durch Ausnutzung weiterer Sicherheitslücken im Betriebssystem selbst, also durch eine Exploit-Chain, auf das gesamte System zugreifen. Von dort aus kann die Malware Ihre Daten stehlen, manipulieren, verschlüsseln, Ihre Aktivitäten am Computer sowie Ihre Kamera und Ihr Mikrofon überwachen usw.
Dies bedeutet, dass eine einzelne kompromittierte Anwendung potenziell das gesamte System gefährden kann. Qubes OS bietet diesem Problem Einhalt, indem es jede einzelne Anwendung in einer eigenen VM betreibt. Somit sind Ihr Browser, Ihr E-Mail-Client, Ihr Passwort-Store und Ihr PDF-Viewer voneinander isoliert. Wird ein Programm und das Betriebssystem seiner VM mit Malware infiziert, kann die Malware nicht auf die Daten der anderen Programme zugreifen oder gar das zentrale Betriebssystem infizieren, welches die VMs betreibt. Zusätzlich dazu bietet Qubes OS diverse Sicherheitsmechanismen, welche die permanente Malware-Infektion einer VM verhindern können.
Wie nutzt Qubes OS virtuelle Maschinen, um die Verbreitung von Malware zu unterbinden?
Qubes OS verwendet zahlreiche Sicherheitsmechanismen, um die Verbreitung von Malware zu verhindern. Eine zentrale Strategie ist die Nutzung verschiedener VM-Typen, welche die permanente Malware-Infektion einzelner VMs effektiv bekämpfen:
- TemplateVMs: Diese VMs enthalten eine Installation von Linux oder Windows und haben standardmäßig keinen Internetzugang. Software kann über einen internen abgesicherten Proxy heruntergeladen und installiert werden. Anwendungen werden hier nur installiert, aber nie direkt gestartet. Dies garantiert, dass TemplateVMs nicht mit Malware infiziert werden und somit vertrauenswürdig sind. TemplateVMs dienen als Grundlage für die Erstellung der folgenden VM-Typen.
- AppVMs: Diese VMs werden beim Start aus einem Snapshot einer TemplateVM erstellt. Sie speichern Daten im /home-Verzeichnis persistent, während Betriebssystemdaten bei jedem Neustart auf einen neuen Snapshot der TemplateVM zurückgesetzt werden. Dies bedeutet, dass Malware, die das Betriebssystem infiziert, beim herunterfahren der VM gelöscht wird. AppVMs sind für Anwendungen gedacht, welchen ein hohes Maß an Vertrauen entgegengebracht wird, wie z.B. Browser für vertrauenswürdige Websites, wie z.B. die der eigenen Bank.
- DisposableVMs: Diese VMs werden bei jedem Start aus einer Kombination eines Snapshots einer TemplateVM und einem Snapshot des /home-Verzeichnisses einer AppVM erstellt. Sämtliche Daten werden beim Herunterfahren gelöscht, was sie ideal für riskante Aufgaben macht, wie z.B. das Surfen auf unbekannten Websites oder das öffnen von PDF-Anhängen aus E-Mails.
- StandaloneVMs: Diese VMs speichern alle Daten persistent und funktionieren wie ein klassisches Betriebssystem. Sie werden beim hochfahren nicht aus Snapshots anderer VM-Typen erstellt und eignen sich für Aufgaben, die regelmäßig neue Software-Installationen erfordern oder für das ausprobieren neuer Programme.
Praktische Beispiele:
- Trusted Browser: Ein Browser für vertrauenswürdige Websites läuft in einer AppVM namens trusted-browser. Login-Daten werden in einer separaten AppVM namens password-store ohne Internetzugang gespeichert. Um sich auf der Bank-Website einzuloggen, Copy-Pasten Sie das Passwort aus der passwort-store VM in die trusted-browser VM.
- Untrusted Browser: Zum allgemeinen Surfen im Internet verwenden Sie eine DisposableVM namens untrusted-browser. Sollte diese kompromittiert werden, wird die Malware beim Herunterfahren gelöscht.
- E-Mail Client VM: Das E-Mail-Client Programm wird in einer AppVM betrieben, welches die E-Mails unterhalb des /home-Verzeichnisses permanent speichert. E-Mail-Anhänge wie PDF-Dateien werden vor dem öffnen in eine DisposableVM kopiert und nur dort geöffnet.
- USB-Speichermedien: USB-Schnittstellen sind einer DisposableVM namens sys-usb zugewiesen. Wenn ein infizierter USB-Stick angeschlossen wird, befällt die Malware lediglich das Betriebssystem dieser VM und bleibt dort bis zum nächsten Neustart der VM gespeichert. PDF-Dateien werden wie in der E-Mail VM in einer separaten DisposableVM geöffnet.
Weitere Sicherheitsfunktionen:
- Netzwerk-VMs: Trennen den Netzwerkverkehr zwischen Anwendungs-VMs und dem Internet. Die sys-net-VM verbindet den Computer mit dem Router, während die sys-firewall-VM regelt, welche VM mit welchen Servern kommunizieren darf. Beispielsweise kann die trusted-browser VM ausschließlich mit der Bank-Website und anderen zuvor festgelegten Websites kommunizieren, währen die E-Mail VM lediglich mit dem Mailserver kommunizieren darf.
- VPN und Netzwerk-Überwachungs-VM: Eine sys-net-vpn-VM leitet den gesamten Netzwerkverkehr durch ein VPN. Eine Netzwerk-Überwachungs-VM kann ungewöhnlichen Datenverkehr erkennen und melden, wodurch Malware frühzeitig entdeckt wird, zum Beispiel wenn die E-Mail VM versucht, einen unbekannten Server zu kontaktieren.
Verwaltung und Nutzung: Qubes OS erfordert technisches Verständnis für die initiale Einrichtung und einige Tage an Einarbeitungszeit. Ist das System jedoch erst einmal eingerichtet und die Handhabung vertieft, können sämtliche täglichen Aufgaben flüssig und ohne große Hindernisse erledigt werden. Der Unterschied zu einem klassischen Betriebssystem ist dann kaum noch spürbar. Professionelle Unterstützung durch eine Qubes-OS Consultingunternehmen wie Blunix GmbH aus Berlin kann bei der Implementierung und Wartung hilfreich sein, um sicherheitskritische Fehler bei der Einrichtung zu vermeiden.
Das müssen Sie beim Wechsel zu Qubes OS beachten
Um auf Qubes OS umzusteigen, gibt es mehrere wichtige Schritte, die beachtet werden sollten.
Die Hardware-Anforderungen sind aufgrund der Nutzung vieler einzelner VMs deutlich höher als bei klassischen Betriebssystemen. Qubes OS benötigt moderne Hardware mit Unterstützung für Virtualisierungstechnologien wie VT-x und VT-d (bei Intel) oder AMD-V und AMD-Vi (bei AMD). Auch läuft Qubes OS nicht auf sämtlicher Hardware fehlerfrei. Die Qubes OS Community stellt hierzu eine Liste mit getesteten Laptops und Workstations bereit. Für professionelle Anwender und solche, welche sich neue Hardware anschaffen möchten, lohnt ein Blick auf Qubes OS zertifizierte Hardware-Hersteller wie NovaCustom aus den Niederlanden und Nitrokey aus Deutschland.
Der Download und die Installation von Qubes OS ist unkompliziert – wenn Sie Windows oder Ubuntu Linux installieren können, können Sie auch Qubes OS installieren, vorausgesetzt Ihre Hardware wird unterstützt. Folgen Sie dazu einfacher der offiziellen Qubes OS Installations-Dokumentation, um von Ihrem bestehenden Betriebssystem aus einen bootbaren USB-Stick zu erstellen. Am besten führen Sie diesen Schritt nicht auf einem alten Computer aus, bei dem Sie davon ausgehen, dass er schon mit Malware infiziert ist. Der Installer erklärt grafisch in einfachen Schritten, was zu tun ist. Wählen Sie für die standardmäßige Festplattenverschlüsselung ein sicheres Passwort und behalten Sie für die erste Installation am besten einfach alle vorausgewählten Standardeinstellungen bei.
Nach der Installation sollten Sie sich etwas Zeit nehmen, um Qubes OS kennen zu lernen. Qubes OS installiert eine Reihe von Standard-VMs, sodass Sie das Betriebssystem direkt ausprobieren können. Klicken Sie zuerst oben rechts auf das rote Internet-Icon, um die sys-net VM mit dem WLAN-Netzwerk zu verbinden. Öffnen Sie dann über die Startleiste einen Browser. Laden Sie zum Beispiel eine PDF Datei herunter und öffnen Sie dann über die Startleiste in der selben VM den File-Manager. Klicken Sie auf den Downloads Ordner und wählen Sie nach einem Rechtsklick auf die PDF-Datei in DisposableVM öffnen aus. Diese Aktion startet eine neue DisposableVM, kopiert die PDF-Datei dorthin und öffnet sie.
Die vorinstallierten VMs sind so konfiguriert, dass sie eine sichere Umgebung bieten, welche es Ihnen ermöglicht die Grundlagen von Qubes OS kennenzulernen und sich mit der Verwendung von Anwendungen in einzelnen VMs vertraut zu machen. Weitere Informationen zur Einrichtung und Nutzung der Standard-VMs finden Sie in der Qubes OS Dokumentation. Für den täglichen Einsatz von Qubes OS empfiehlt es sich, eigene VMs anzulegen und das Betriebssystem an die individuellen Aufgaben anzupassen.
Die Qubes OS Community bietet Hilfe und Unterstützung für Interessierte und Anwender. Für weitere Informationen empfiehlt sich die offizielle Qubes OS Dokumentation. Auch gibt es ein sehr aktives und hilfsbereits Forum, eine Mailing Liste, IRC Channel, diverse Matrix Channel sowie die Github-Seite des Projekts.