Sicherheitsdistribution Qubes OS 4.0

Aus LinuxUser 10/2018

Sicherheitsdistribution Qubes OS 4.0

© enki, 123RF

Sichere Würfel

Über das Isolieren kompletter Arbeitsumgebungen in virtuellen Maschinen erzeugt Qubes OS einen deutlichen Zuwachs an Sicherheit.

Wenn es um Sicherheit bei Betriebssystemen geht, gibt es unterschiedliche Ansätze: Einige Zeitgenossen nutzen ausschließlich Live-Betriebssysteme wie etwa Tails [1]. Andere verlassen sich auf voll- oder teilverschlüsselte Betriebssysteme. Allen diesen Ansätzen ist gemein, dass sie zur Laufzeit selbst wenig Schutz bieten und alle Anwendungen in einem gemeinsamen Kontext laufen.

Qubes OS geht einen anderen Weg. Sicherheit entsteht hier durch Isolation. Chef-Entwicklerin und Sicherheitsforscherin Joanna Rutkowska [2] geht von der Prämisse aus, dass es bei den Millionen Codezeilen und Instruktionen heutiger Anwendungen keine perfekt fehlerfreie Desktop-Benutzerumgebung geben kann und bezeichnet Qubes OS als “einigermaßen sicheres Betriebssystem”.

2007 gründete Rutkowska in Warschau das Sicherheitsunternehmen “Invisible Things Lab” [2], das sich auf Sicherheitsforschung im Bereich Betriebssysteme und Virtuelle Maschinen spezialisiert. Seit 2010 entwickelt die Forscherin mit ihrem Team dort auch Qubes OS, das nach annähernd zwei Jahren Entwicklungszeit nun in Version 4.0 vorliegt. Mit der neuen Version wurden große Teile des Systems neu geschrieben oder umstrukturiert. Geblieben ist Fedora als Unterbau mit XFCE als Desktop-Umgebung sowie Kernel 4.14.18 und der Hypervisor Xen 4.8, um mit getrennten Virtuellen Maschinen (VM) [3] Arbeitsbereiche oder Anwendungen voneinander zu isolieren und damit weit weniger angreifbar zu machen.

Gewürfelt

Diese isolierten Einheiten heißen Qubes, abgeleitet von Cubes, zu Deutsch Würfel. Sie könnten beispielsweise einen Würfel für unsichere Webseiten einrichten und einen weiteren für Bankgeschäfte, jeweils mit unterschiedlichen Berechtigungen. Im Fall der Kompromittierung des Würfels für unsichere Webseiten durch Malware, bleibt dem Angreifer der Zugriff auf den Würfel für Bankgeschäfte verwehrt.

Die Entwickler verhindern das, indem ein Würfel nur Lesezugriff auf das Dateisystem des VM-Templates erhält, auf dem er basiert, sodass ein Würfel eine solche Vorlage in keiner Weise verändern kann. Zusätzlich bietet Qubes die Option, sogenannte “disposable VMs” zu erstellen. Diese Wegwerf-Würfel dienen etwa dazu, bei Bedarf E-Mail-Anhänge oder verdächtige Dateien sicher zu öffnen und hinterher samt der VM zu entsorgen.

Grundsätzlich kapselt Qubes neben dem Wirtssystem mit der GUI auch die Netzwerk- und Storage-Subsysteme in jeweils eigene Domänen, wie bei Xen die virtuellen Maschinen heißen. Die verschiedenen Domänen basieren dabei auf VM-Templates, welche die Rechte der Domäne regeln und das Basisgerüst liefern. Das minimale Wirtssystem mit XFCE läuft dabei in der privilegierten Admin-VM dom0. Mit Qubes OS 4.0 wurde das System der Domänen nun signifikant ausgebaut.

Fernsteuerung

Um Qubes OS 4.0 für den Einsatz in großen Organisationen und Unternehmen zu optimieren, muss sich das System zuverlässig von den Administratoren in den IT-Abteilungen verwalten und fernsteuern lassen. Für diese Aufgabe gibt es jetzt die “Qubes Admin API” [4]. Die Schnittstelle basiert auf dem Framework Qrexec [5] und dient dazu, per Management-VM die Installation von Paketen abzusichern und die Administration von außerhalb zu ermöglichen. Es lassen sich damit außerdem per Richtlinien Rechte für Administratoren gezielt zuweisen.

Zudem erlaubt die API das sichere Zurückspielen von Backups, die mit älteren (und nicht mehr vertrauenswürdigen) Versionen von Qubes erstellt wurden. Als Reaktion auf die CPU-Sicherheitslücken “Meltdown” und “Spectre” arbeiten die meisten VMs in Qubes 4.0 jetzt als Hardware Virtual Machines (HVM) [6]. Auf die etwas einfacheren paravirtualisierten VMs (PVM) greift Qubes in der Standardkonfiguration kaum noch zurück [7].

Umbau beim Qube Manager

Eine weitere wesentliche Änderung betrifft den Qube Manager. Bisher bietet die Software eine grafische Möglichkeit, VMs zu starten, zu stoppen oder zu pausieren. Außerdem lassen sich über das Programm unter anderem alle VM-Einstellungen und Firewall-Regeln der Domänen ändern und Backups erstellen. Im Unterschied zur Vorgängerversion verschlüsselt das System jetzt alle Sicherungen (Abbildung 1).

Abbildung 1: Das Erstellen von Backups regeln Sie über die Menüs, die Auswahl der zu sichernden Daten findet durch Verschieben der Würfel statt.

Abbildung 1: Das Erstellen von Backups regeln Sie über die Menüs, die Auswahl der zu sichernden Daten findet durch Verschieben der Würfel statt.

Mit Qubes 4.0 zeigen sich beim Qube Manager erste Änderungen. Eines der Ziele des Qubes-4-Zyklus liegt darin, den Qube-Manager durch eigenständige Werkzeuge zu ersetzen, die den Großteil der ursprünglichen Funktionalität nachbilden. So lassen sich jetzt USB-Sticks, Mäuse, Kopfhörer, Mikrofone und Ähnliches in 4.0 über ein Icon im Panel oben rechts einer VM zuweisen oder entfernen (Abbildung 2).

Abbildung 2: Externe Hardware wie USB-Sticks, Mikrofone oder Webcams geben Sie gezielt in den Domains frei, in denen Sie die Geräte benötigen.

Abbildung 2: Externe Hardware wie USB-Sticks, Mikrofone oder Webcams geben Sie gezielt in den Domains frei, in denen Sie die Geräte benötigen.

Hardware-Zicke

Aufgrund seines Aufbaus darf man Qubes ohne Übertreibung als anspruchsvoll bezeichnen, wenn es darum geht, das System sinnvoll auf einem Computer zu installieren. Diese Situation verschärft sich mit Qubes 4.0 eher noch: Die Hardware muss eine Intel- oder AMD-CPU mit 64 Bit aufweisen, welche die Virtualisierungstechniken Intel VT-x, VT-d [8] und Extended Page Table (EPT) oder AMD-V, -Vi und Rapid Virtualization Indexing (RVI) [9] unterstützt. Darüber hinaus benötigt der Rechner mindestens 4 GByte Hauptspeicher und 32 GByte freien Festplattenplatz.

Dazu muss nicht nur die CPU die Modi unterstützen, sie müssen auch im BIOS/UEFI aktiviert oder aktivierbar sein. Wie sich das bei Ihnen verhält, lässt sich über den Befehl sudo cat /proc/cpuinfo herausfinden. In der Dokumentation von Qubes findet sich auch eine Liste mit kompatiblen Geräten [10]. Für den Testbericht musste sich ein Purism Librem 15 v3 beweisen, in der Regel eignen sich auch einige ThinkPads und die aktuellen Modelle von Tuxedo Computers gut für Qube.

Alternativ testen Sie die Kompatibilität Ihres Rechners zu Qubes OS, indem Sie einfach den Installer starten. Qubes startet aufgrund seiner Funktionsweise zwar nicht als Live-System, während die Installationsroutine lädt, prüft der Assistent jedoch die Hardware auf ihre Eignung. Zu Beginn des Installationsprozesses, nach der Wahl der Sprache, erhalten Sie dann gegebenenfalls eine Warnung über alle Virtualisierungsfunktionen, die auf Ihrer Hardware fehlen oder deaktiviert sind.

Insbesondere die Warnung über die fehlende Unterstützung von IOMMU, auf Intel-Prozessoren auch als VT-d bekannt, und von SLAT (Hardware-Speicher-Virtualisierung) sollten Sie nicht ignorieren. Die Installation lässt sich in diesen Fällen zwar fortsetzen, das System wird später allerdings nicht vollumfänglich wie angedacht funktionieren.

Workaround

Im Falle von nicht vorhandener Unterstützung für IOMMU lässt sich das Problem nach der Installation umgehen, indem Sie den Virtualisierungsmodus für die VMs sys-net und sys-usb von HVM (Hardware VM) auf PV (ParaVirtualized) heruntersetzen. Dazu führen Sie mit administrativen Rechten im Terminal von dom0 die Kommandos aus Listing 1 aus.

Listing 1

# qvm-prefs sys-net virt_mode pv
# qvm-prefs sys-usb virt_mode pv

Danach sollte Qubes bei etwas verminderter Sicherheit lauffähig sein. Aber zunächst zur Installation selbst: Die Entwickler greifen auf den von Fedora bekannten Installationsassistenten Anaconda zurück. Wer diesen bislang noch nicht kennt, wird sich anfangs bei der Partitionierung schwertun, aber nach etwas Probieren durchschaut man das System dahinter. Das System verschlüsselt in der Standardeinstellung die Datenträger vollständig, diese Option muss man allerdings nicht zwingend beibehalten.

Debian 9 als Domäne

Optional lässt sich zusätzlich eine Debian-9-Domäne sowie die Tor-Distribution Whonix [11] installieren, welche das Surfen im Internet weiter absichert, und alle Datenpakete durch das Tor-Netzwerk leitet (Abbildung 3). Die vorhandenen, neu erstellten oder geklonten App-VMs lassen sich in Ihren Einstellungen von Fedora 26 auf Debian 9 umstellen. Dazu muss die AppVM inaktiv sein. Nach dem Neustart der involvierten Domänen stehen in der entsprechenden App-VM Debian-Pakete und Befehle zur Verfügung (Abbildung 4).

Abbildung 3: Ob der Browser per Whonix über das Tor-Netzwerk läuft, erkennen Sie am roten Fensterrand des Browsers.

Abbildung 3: Ob der Browser per Whonix über das Tor-Netzwerk läuft, erkennen Sie am roten Fensterrand des Browsers.


Abbildung 4: Das einem Qube zugrundeliegende Template lässt sich ändern. Hier basiert die VM "LinuxUser" nicht mehr auf Fedora 26, sondern Debian 9.

Abbildung 4: Das einem Qube zugrundeliegende Template lässt sich ändern. Hier basiert die VM “LinuxUser” nicht mehr auf Fedora 26, sondern Debian 9.

Qubes lässt sich zwar als Multiboot mit Linux und/oder Windows einrichten. Dieses Unterfangen ist aber nicht ganz trivial und erfordert besondere Aufmerksamkeit. Zudem raten die Entwickler in der Dokumentation des Projekts von diesem Schritt ab [12]. Am wohlsten fühlt sich Qubes als Alleinherrscher über die Festplatte. Die Distribution verweigert übrigens die Installation in eine Virtualbox, hier heißt es also: alles oder nichts.

Vorher belesen

Bevor Sie loslegen, bietet es sich im Fall von Qubes an, in der gut gestalteten Dokumentation zu stöbern. Die Installation selbst dauert auf aktueller Hardware rund eine halbe Stunde, nach dem üblichen Reboot folgt die initiale Einrichtung. Hier sollten Sie als Neuling die Voreinstellungen übernehmen. Falls Sie am Anfang der Installation Whonix gewählt haben, sollten Sie es hier aktivieren. Die Einrichtung dauert dann nochmals rund zehn Minuten.

Nach Abschluss der initialen Einrichtung finden Sie sich in einer Umgebung wieder, die leicht an Fedora erinnert. Alle Bedienelemente sitzen in einer Leiste am oberen Bildschirmrand. Zunächst sollten Sie durch Klick auf das Q oben rechts den Qube-Manager starten, der alle verfügbaren Domänen auflistet. Jede davon, oder nach Belieben auch Würfel, öffnet eine eigene VM.

Erster Eindruck

Ganz oben sehen Sie dom0. In dieser Domäne läuft die grafische Benutzeroberfläche, die gänzlich ohne Netzwerkzugang auskommt. Diese sollten Sie als Erstes aktualisieren (Abbildung 5). Darunter befinden sich einige Domänen, die mit sys beginnen, wie etwa sys-net. Diese sichern Teilbereiche des Systems ab. Sollte ein Angreifer Zugriff auf die Netzwerkkarte erhalten, bekommt er trotzdem keinen Zugang auf andere Domänen. Es folgen einige Template-VMs. Auf jeden Fall vorhanden ist Fedora 26. Weitere Templates für Debian 9 und Whonix hängen von Ihrer Auswahl während der Installation ab.

Abbildung 5: Ein Rechtsklick auf <code>dom0</code> bietet unter anderem ein Update der VM an, welches grundlegende Pakete aktualisiert. Weitere VMs lassen sich in gleicher Weise auf den neuesten Stand bringen.

Abbildung 5: Ein Rechtsklick auf dom0 bietet unter anderem ein Update der VM an, welches grundlegende Pakete aktualisiert. Weitere VMs lassen sich in gleicher Weise auf den neuesten Stand bringen.

Darunter listet der Qube Manager verschiedene App-Domänen auf. In der Standardkonfiguration nennen sich die Domänen work, personal, vault und untrusted.

Aktualisierung

Als nächste Amtshandlung aktualisieren Sie diese Domänen. Dazu wählen Sie den jeweiligen Eintrag an und klicken dann auf das Icon mit dem nach unten gerichteten Pfeil in der Bedienleiste des Qube-Managers. Daraufhin lädt das Programm alle anstehenden Änderungen aus dem Netz, und spielt die entsprechenden Pakete in den VMs ein.

Als Nächstes aktualisieren Sie das Template für Fedora 26. So müssen Sie sich nicht einzeln um die personalisierten Domänen kümmern, sondern diese nach Abschluss des Updates des Fedora-Templates nur neu starten. Die Domänen erhalten dann automatisch Zugriff auf die neuen Pakete.

Übrigens verhilft ein kleiner Ausflug nach Systemtools | Settings Manager und ein Häkchen in der Abteilung Maus und Touchpad zu einem Touchpad. Dieses verarbeitet neben Klicks auf die Hardware-Tasten eines Notebook-Touchpads auch “Taps”, also Tipper mit dem Finger auf die Touchpad-Oberfläche. In der Abteilung Panel konfigurieren Sie die Leiste an der Oberkante des Displays oder verschieben sie an eine andere Stelle.

Gemächlich

Nach dem Einspielen aller Updates, sollten Sie sich daranmachen, die einzelnen Arbeitsbereiche nach Bedarf einzurichten, neue zu erstellen oder vorhandene zu klonen (Abbildung 6). All dies geschieht über das Menü oder das Kontextmenü der einzelnen Domänen. Dabei entscheiden Sie unter anderem, welche Anwendungen in der jeweiligen Domäne laufen und worauf die Domäne Zugriff erhält (Abbildung 7).

Abbildung 6: Das Hauptmen&uuml; f&uuml;hrt sowohl zu den &uuml;bergeordneten System Tools als auch zu den Einstellungen der einzelnen VMs.

Abbildung 6: Das Hauptmenü führt sowohl zu den übergeordneten System Tools als auch zu den Einstellungen der einzelnen VMs.


Abbildung 7: Sowohl die globalen als auch die VM-spezifischen Einstellungen rufen Sie &uuml;ber das Kontextmen&uuml; auf. Sie bieten Zugriff auf die Kernel-Version, zugeteilten Speicher, Firewall und die Standardvorlage.

Abbildung 7: Sowohl die globalen als auch die VM-spezifischen Einstellungen rufen Sie über das Kontextmenü auf. Sie bieten Zugriff auf die Kernel-Version, zugeteilten Speicher, Firewall und die Standardvorlage.

Über den Desktop erstellte Dateien wie etwa Screenshots landen im Dateimanager von dom0. Dort “stecken” Sie fest, da diese Domäne weder Zugriff auf das Internet noch auf externe Datenträger erlaubt. Um solche Daten zu befreien, müssen Sie diese erst per Skript in eine passende VM schieben. Dazu dient das Kommando qvm-copy-to-vm Quelle Ziel. In Zukunft möchten die Entwickler Routinen implementieren, die diese Aktion erleichtern.

Im Alltag erweist sich Qubes nun aufgrund seiner Struktur beim Start von Anwendungen und dem Aktivieren von Domänen nicht als das schnellste System. Dennoch erfüllt die Distribution während eines üblichen Arbeitstags mit Browser, Textverarbeitung und Office alle Anforderungen. Den Aufwand für Installation und Administration sollten Sie jedoch nicht unterschätzen. Die dargelegten grundlegenden Techniken und Herangehensweisen sollten aber als Entscheidungsgrundlage ausreichen, ob sich der Aufwand lohnt. Änderungen der Version 4.0 vermitteln die Release Notes [13].

Fazit und Ausblick

Qubes OS bietet in Kombination mit dem anonymisierenden Whonix vermutlich das sicherste Betriebssystem auf dem Markt. In Verbindung mit einem Librem-Notebook von Purism lässt sich die Sicherheit durch Coreboot, TPM und Killswitches weiter erhöhen. Für Security-Enthusiasten und Anwender, die Sicherheit ernst nehmen (müssen) und über die passende Hardware verfügen, bieten die Entwickler von Qubes OS das optimale System.

Linux-Einsteiger sollten allerdings noch abwarten: Von der Vorgabe der Entwicklerin Rutkowska, Qubes OS solle sich so einfach wie Ubuntu bedienen lassen, ist das System derzeit noch Lichtjahre entfernt. Im Moment brauchen auch Linux-Profis einige Tage zum Einarbeiten und Verstehen des Systems. Für Qubes OS 4.1 arbeitet das Team an einer eigenen GUI-Domain, die dom0 verkleinern und somit noch weniger Angriffsfläche bieten soll. Zudem soll die Distribution in Zukunft Container anderer Hypervisoren wie etwa KVM unterstützen. 

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDF
LinuxUser 10/2018 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben