Security Laptop vs-top: Sicher trotz Meltdown & Spectre

Security Laptop vs-top: Sicher trotz Meltdown & Spectre

In regelmäßigen Abständen sind IT-Anwender von unvorhersehbaren Sicherheitslücken betroffen. Auf einmal sind Systeme von Angriffen bedroht, wie sie z. B. derzeit durch die unter Meltdown und Spectre bekannt gewordenen Sicherheitsprobleme moderner CPUs ermöglicht werden. Dies stellt Anbieter von IT-Sicherheit vor eine echte Herausforderung. Entwicklungsziel von genua sind daher Produkte, die durch Security by Design eine hohe Widerstandsfähigkeit aufweisen.

Etwa Mitte 2012 entwickelten wir die ersten Ideen und Prototypen für einen "Security Laptop". Ziel war ein handelsüblicher portabler Rechner mit mehreren gleichzeitig lauffähigen Nutzer-Betriebssystemen. Die Kommunikation sollte stets über unsere Firewall-/VPN-Software gesichert werden.

Sichere Architektur von Anfang an

Um ein maximal sicheres Design zu erreichen, evaluieren unsere Entwicklungsteams immer wieder neue Technologien und Verfahren. Aber was bedeutet überhaupt "sicheres Design" und woran erkennt man es? Ganz konkret stellt sich die Frage, wie sich eine hochsichere Architektur von anderen, weniger sicheren unterscheiden lässt. Besonders interessant erscheinen diese Fragen vor dem Hintergrund der vor Kurzem bekannt gewordenen Sicherheitslücken Meltdown und Spectre.

Eine sichere IT-Architektur zeichnet sich vor allem durch die klare Aufgabendefinition der einzelnen Komponenten und durch das "Least-Privilege"-Prinzip aus. Eine Komponente erhält nur die Privilegien und Zugriffsrechte, die sie zwingend zur Erledigung ihrer Aufgabe braucht.

Sicherheitsfundament Microkernel

Ein derart geplantes Softwaresystem besteht somit meist aus kleinen und überschaubaren Komponenten, die miteinander über klar festgelegte Schnittstellen kommunizieren. An dieser Stelle kommt der von genua gewählte Microkernel namens L4 ins Spiel. Diese Software übernimmt die Kontrolle über die Hardware des Rechners und stellt hauptsächlich vier Operationen zur Verfügung:

  • Zuteilung des Hauptspeichers
  • Verteilung von CPU-Ressourcen (Scheduling)
  • Erlaubnis für den Zugriff auf Hardware
  • Kommunikation zwischen den einzelnen Applikationen, die auf dem Microkernel laufen

Besonders interessant in diesem Zusammenhang ist, dass komplette Betriebssysteme – mit kleineren Anpassungen – als Applikationen auf dem Microkernel laufen können. So lassen sich Betriebssysteme "einsperren", ihr Zugriff auf Hardware-Komponenten klar definieren und somit auch einschränken.

Der Microkernel selbst ist ein sehr kleines und überschaubares Softwaresystem, das aus etwa 37.000 Zeilen Code besteht. Zum Vergleich: Der Linux-Kernel enthält etwa 20.000.000 Zeilen Code, FreeBSD ca. 8.800.000 – also 540 bzw. 230 mal mehr als der Microkernel.

Mit zunehmender Größe und Komplexität wächst nachweislich die Fehlerrate in Software – und damit die Gefahr von Sicherheitsproblemen. Aus diesem Grund nutzen wir den Microkernel zur Durchsetzung der strikten Isolation zwischen einzelnen Modulen. Denn für die Sicherheit gilt: Sobald klar definiert ist, was ein Modul darf und welche Zugriffsrechte existieren, sind Fehler innerhalb des Moduls kaum problematisch und deutlich schwieriger ausnutzbar.

Transparenter Schutz und Performance

Dies ist die Grundlage für die Architektur des Security Laptops vs-top:

  • Große und somit zu vielen Fehlern neigende Komponenten werden mithilfe der Microkernel-Technologie "eingesperrt". Treten Fehler innerhalb einer solchen Komponente auf, sind keine Rückwirkungen auf den verbleibenden Rest des Gesamtsystems zu erwarten.
  • Die für eine sichere Verschlüsselung der Festplatte oder der Netzwerkkommunikation genutzten Komponenten funktionieren eigenständig. Sie sind zu 100 Prozent bei genua entwickelt  oder basieren auf von uns überprüften Software-Bausteinen, die wir seit vielen Jahren erfolgreich verwenden.
  • Das System hat einen Zulassungsprozess beim Bundesamt für Sicherheit in der Informationstechnik (BSI) durchlaufen. Bei Zulassungsverfahren werden die kritischen Komponenten auf sehr grundlegende Weise analysiert und ihre Funktionsfähigkeit und Korrektheit überprüft.
  • Darüber hinaus nutzt das System sowohl die zur Verfügung stehenden Hardware-Mechanismen zur Beschleunigung von virtualisierten Umgebungen als auch den eingeschränkten und definierten Zugriff auf Hardware, um eine maximale Performance im Nutzer-Betriebssystem zu erreichen.

Die Sicherheitsarchitektur im Überblick

Die Architektur ist in Darstellung 1 zu sehen. Zum Vergleich ist eine Standard-Virtualisierung, bestehend aus Betriebssystem, Hypervisor und einer definierbaren Anzahl virtueller Maschinen in Darstellung 2 abgebildet.
Die Sicherheitsvorteile der vs-top Architektur im Vergleich zur Standard-Virtualisierung im Einzelnen:

Ein Hypervisor simuliert eine reale Hardware, auf der virtuelle Maschinen (VM) laufen. Bei einer Standard-Virtualisierung ist man auf einen fehlerfreien und sicheren Hypervisor angewiesen. Befindet sich ein kritischer Fehler in dieser Komponente, hat ein Angreifer direkten Zugriff auf das unterliegende Betriebssystem oder eine weitere VM.

Sichere vs. unsichere Virtualisierung

Gängige Hypervisoren bestehen aus vielen Millionen Zeilen Code. Damit enthalten sie entsprechend viele, teils sicherheitskritische Fehler. Im schlimmsten Fall wird ein Ausbruch aus der VM auf den realen Host und damit die Übernahme des physikalischen Rechners ermöglicht. Um dieses Risiko auszuschließen, isolieren wir den Hypervisor in einer Microkernel-Applikation und minimieren so die Angriffsfläche. Ein Fehler im Hypervisor kann somit lediglich eine Privilegieneskalation innerhalb dieses einen Applikationscontainers (Compartment) zur Folge haben und hat keine Rückwirkung auf das restliche System.

Aus diesem Grund hat jedes Nutzer-Betriebssystem auf dem vs-top seinen eigenen Hypervisor. Der Vorteil liegt auf der Hand: Während ein Angreifer bei einer Standard-Virtualisierung durch einen möglichen Fehler Zugriff auf weitere virtuelle Maschinen erlangen kann, steht ihm beim vs-top architekturbedingt nur die bereits übernommene Instanz zur Verfügung. Unser Design kalkuliert also kritische Fehler des Hypervisors ein, vor denen wir das Gesamtsystem schützen müssen.

Ein unsicherer Hypervisor erzeugt noch weitere potenzielle Folgeprobleme: Startet man im Nutzer-Betriebssystem einen Prozess, der aus dem Hypervisor ausbrechen kann und Zugriff auf das darunterliegende Betriebssystem erlangt, dann besteht die Möglichkeit, ggf. Parameter der Festplattenverschlüsselung oder VPN-Verbindungen zu lesen und unkontrolliert abfließen zu lassen. Die aktuell unter Meltdown bekannt gewordenen Angriffsmethoden z. B. auf Intel-CPUs schaffen in der Architektur (Darstellung 2) eine weitere Möglichkeit, an diese Geheimnisse zu gelangen. Unter Nutzung der Angriffsmethoden ist es theoretisch sogar denkbar, dass angreifende Programme im Nutzer-Betriebssystem gestartet werden und kryptografische Geheimnisse aus dem Betriebssystem lesen, das direkt auf der Hardware läuft.

Schutz vor Meltdown & Spectre

Gegen einen Angriff nach dem Meltdown-Prinzip hilft uns hier der eingesetzte Microkernel (Darstellung 1): Die Geheimnisse sind im Gegensatz z. B. zu einem (ungepatchten) Linux gar nicht im Speicherabbild vorhanden, das während der Ausführung des Hypervisors aktiviert ist. Wir verstecken die kryptografischen Geheimnisse in extra dafür abgekapselten Tasks und machen diese nur dann im Speicher sichtbar, wenn der betreffende Code auch ausgeführt wird.

Sicher vor Meltdown und SpectreDie Entwicklung der Security Laptops folgte dem Security by Design-Ansatz

Seitenkanalangriffe nach dem Spectre-Verfahren sind durch Software nicht so einfach in den Griff zu bekommen. Aber auch hier wurden beim Systemdesign Vorkehrungen getroffen: Als weitere Sicherheitsmaßnahme ordnen wir jedes Compartment jeweils einem festen CPU-Kern zu, d. h. eine Software läuft immer auf dem gleichen, dafür fest eingestellten CPU-Kern ("CPU-Pinning"). Dadurch werden Seitenkanäle minimiert, wie sie z. B. für Angriffe nach Spectre genutzt werden. Eine Standard-Architektur (Darstellung 2) lässt Prozesse randomisiert auf allen CPU-Kernen laufen, um die Performance möglichst zu maximieren, wodurch die Anzahl der Seitenkanäle deutlich erhöht wird bei proportional zunehmenden Angriffsvektoren. Kurz: Ein Standard-Hypervisor öffnet Angriffsversuchen ein Scheunentor. Bei unserem Security Laptop mit doppelter Schutzvorrichtung bleibt dagegen nur ein Nadelöhr, von dem kein signifikantes Sicherheitsrisiko ausgeht.

Überzeugende Abwehrleistung

Architekturbedingt ist das Security Laptop vs-top bestmöglich vor Meltdown geschützt. Dieser Schutz muss bei anderen Systemen erst durch Patches (soweit vorhanden) nachgeholt werden – mit entsprechendem Performance-Verlust. Gegen Spectre gibt es kein Allheilmittel, jedoch hat genua bereits durch das einzigartige Design im Kernel mit CPU-Pinning Zuweisungen und durch Compartmentierung Trennungen vorgenommen, die derzeit kein anderes System aufweisen kann.

Als führender Anbieter von IT-Sicherheit sehen wir uns bestätigt: Der aufwändige Entwicklungsprozess nach dem Prinzip "Security by Design" hat sich gelohnt. Dank transparenter Sicherheitsarchitektur unserer Produkte bieten wir Kunden ein außergewöhnlich hohes Schutzniveau.

 

Bildquelle: © Edelweiss - Fotolia.com


Lesen Sie auch

Diskutieren Sie mit

Sie können diesen Artikel sofort ohne Registrierung als Gast-User kommentieren.

Registrieren Sie sich jetzt! Mit einem User Account genießen Sie Vorteile:
Ihr Kommentar wird sofort im genublog veröffentlicht und Sie werden über Reaktionen auf Ihre Kommentare informiert.

Bereits registrierte User gelangen hier zum Login.



Registrieren Sie sich jetzt! Mit einem User Account genießen Sie Vorteile:
Ihr Kommentar wird sofort im genublog veröffentlicht und Sie werden über Reaktionen auf Ihre Kommentare informiert.

Bereits registrierte User gelangen hier zum Login.

Um für Sie unsere Webseite zu optimieren, verwenden wir Cookies.
Klicken Sie auf "Cookies zulassen", falls Sie der Nutzung von diesen Cookies zustimmen.
Weitere Informationen dazu finden Sie in unserer Datenschutzerklärung, in der Sie auch jederzeit Ihre Cookie-Einstellungen einsehen und anpassen können.
Datenschutz Cookies akzeptieren