Papers/Opensecurity - DACH Paper.tex
author Oliver Maurhart <oliver.maurhart@ait.ac.at>
Wed, 09 Apr 2014 11:27:42 +0200
changeset 32 7ed2f6006e8e
parent 31 8588df78da0b
child 33 af508dfcf163
permissions -rw-r--r--
V0.4
oliver@28
     1
\documentclass[a4paper,10pt]{article}
oliver@28
     2
\usepackage[utf8x]{inputenc}
oliver@28
     3
\usepackage{a4wide}
oliver@28
     4
\usepackage{graphicx}
oliver@28
     5
\usepackage{eurosym}
oliver@28
     6
\usepackage{latexsym}
oliver@28
     7
\usepackage{textcomp}
oliver@28
     8
\usepackage{fancybox}
oliver@28
     9
\usepackage{microtype}
oliver@28
    10
\usepackage{listings}
oliver@28
    11
\usepackage{setspace}
BarthaM@27
    12
oliver@28
    13
\linespread{1.1}
oliver@28
    14
\parskip=4pt
oliver@28
    15
oliver@28
    16
\begin{document}
oliver@28
    17
oliver@28
    18
\title{Security by Isolation Prinzipien in der öffentlichen Verwaltung \\[1em]
oliver@28
    19
\large{Sanfte Migration zu virtualisierten Anwendungen bei bestehenden Betrieb im Rahmen des Open Security Projekts}
oliver@28
    20
}
oliver@32
    21
\author{Ross King, Mihai Bartha, Oliver Maurhart\\
oliver@28
    22
AIT Austrian Institute of Technology
oliver@28
    23
}
oliver@28
    24
oliver@29
    25
oliver@29
    26
oliver@28
    27
\maketitle
oliver@28
    28
oliver@29
    29
\begin{abstract}
oliver@29
    30
oliver@30
    31
Das Open Security Projekt integriert ``Security by Isolation'' Techniken in die öffentliche Verwaltung. Hauptaugenmerk liegt dabei auf den Schutz gegen Viren und Trojaner beim unbedarften und sorglosen Umgang mit dem Internet, Schutz gegen Infektionen mit Malware beim Laden von Dokumenten von Datenträgern wie USB-Sticks und ähnlichen sowie Schutz vor der unbeabsichtigten Veröffentlichung vertraulicher Informationen. Die Integration der Schutzmaßnahmen erfolgt dabei unaufdringlich in eine bestehende IT Infrastruktur ohne die vorhanden und verwendeten domainspezifischen Lösungen und Einrichtungen zu gefährden. Wir zeigen in dieser Arbeit wie eine sanfte Überführung und Migration einzelner bestehender Anwendungsfälle im großen Maßstab im öffentlichen Bereich mit Hilfe von Open Source bei gleichzeitigen Betrieb erfolgen kann. Die angestrebte Lösung richtet sich nach dem Security by Isolation Ansatz aus mittels diesem Applikations- und Systemgrenzen definiert werden um potentielle Schadsoftware einzugrenzen.
oliver@29
    32
 
oliver@29
    33
\end{abstract}
oliver@29
    34
oliver@28
    35
\section{Motivation}
BarthaM@27
    36
BarthaM@27
    37
Outgoing scenario
oliver@28
    38
        Protect sensible data
oliver@28
    39
        Secure interaction with the internet with removable storage devices
BarthaM@27
    40
BarthaM@27
    41
oliver@28
    42
Jede Organisation muss ihre IT-Infrastruktur vor internen und externen Gefahren schützen. Besonders davon betroffen sind auch öffentliche Institutionen, welche private Bürgerdaten wie Strafregister, Krankengeschichte und Meldedaten oder für die Staatssicherheit relevante Informationen verwalten. 
BarthaM@27
    43
oliver@28
    44
Wie Einzelfälle und Statistiken belegen\footnote{WELCHE?}, kommt es aber immer wieder und zunehmend häufiger zu Vorfällen, bei denen private Daten in falsche Hände geraten. Solche Daten können in kürzester Zeit weltweit über das Internet verteilt werden, was schnell zu Worst-Case-Szenarien führen kann. So können beispielsweise private Adressen von Polizeibeamten ihren Weg zu kriminellen Organisationen finden oder private Gesundheitsdaten in die Hände potenzieller zukünftiger Arbeitgeber.
BarthaM@27
    45
oliver@28
    46
Durch die sensible Natur dieser Informationen, sind die Nutzer solcher öffentlichen Einrichtungen oft zu geschlossenen und sicheren lokalen Netzwerk gedrängt. Diese Systeme verfügen oft über keinen Zugang zum Internet (WWW) oder über Anschlüsse für tragbare  Speichermedien (TSM) um den sorgfältigen Umgang mit diesen Daten zu gewährleisten.
BarthaM@27
    47
oliver@28
    48
Das von der FFG\footnote{Österreichische Forschungsförderungsgesellschaft} geförderte Open Security\footnote{http://www.opensecurity.at} Projekt bietet eine Lösung, die Angestellten davor schützt, kritische oder sensible Daten ungewollt preiszugeben. Dieser Schutz beläuft sich auf den Verlust oder den Diebstahl von Datenträgern (z.B. USB-Sticks) und den Befall des Rechners oder Notebooks von Viren, Trojanern und dergleichen. Dabei soll jeder Computer oder Terminal einer Organisation so ausgestattet werden, dass unkontrollierter Datenaustausch verhindert wird. 
BarthaM@27
    49
oliver@28
    50
Bei diesem Projekt kommt erschwerend zur Aufgabenstellung hinzu, dass die Zielumgebung ein heterogenes Anwendungs- und Systemspektrum aufweist, keines der betroffenen Systeme völlig neu aufgesetzt werden darf und ein Rollout zentral gesteuert auf mehreren Rechnern, möglicherweise entfernt in parallel, stattfindet.
BarthaM@27
    51
oliver@28
    52
Unser Lösungsansatz im Open Security Projekt ist eine Client Architektur, die sicherstellt, dass alle auf tragbare Geräten gespeicherten Daten basierend auf einem Digital Rights Management automatisch verschlüsselt werden. Persönliche Daten von BürgerInnen können ausschließlich verschlüsselt auf Festplatten, optischen oder USB-Speichern sowie externe Netzlaufwerken gespeichert werden. Durch Open Security soll jeder Computer oder Terminal einer Organisation unabhängig von seinem Betriebssystem davor geschützt werden, unkontrollierten Datenaustausch zuzulassen. Das Einbringen oder das Mitnehmen von elektronischen Daten durch die Benutzer soll, im Sinne des Institution und des Benutzers selbst so erfolgen, dass es zu keinem Schaden oder Missbrauch kommen kann. Der gestohlene Laptop, der verlorengegangene USB-Speicher oder das verlegte Mobile Device (wie Tablet-PC oder Smartphone) sollen zukünftig außer dem materiellen keinen weiteren Schaden verursachen.
BarthaM@27
    53
oliver@28
    54
Im Fall, dass Hardware (z.B. ein Notebook) oder Speichermedien (z.B. ein USB-Stick) verloren gehen oder gestohlen werden, sind keine sensiblen unverschlüsselten Daten gefährdet. Wurden dennoch sensible Daten preisgegeben, was aufgrund von Richtlinien genehmigt werden kann, dann rekonstruiert die Kontrollkette aus den aufgezeichneten Datenströmen den Ereignispfad. Anhand der Informationen aus einem zentralisierten Logging kann nachvollzogen werden, welche Daten die Organisation verlassen haben und auf welchem Weg (z.B. durch welchen Benutzer, Medium).
BarthaM@27
    55
BarthaM@31
    56
Die Innovation von Open Security besteht in der Verbindung des DLP\footnote{ERKLÄRUNG}-Ansatzes mit einer zentralen Management-Lösung und einer ``Security by Isolation'' Architektur.
BarthaM@27
    57
oliver@28
    58
Das Internet, als dicht vernetztes Gefüge untereinander verbundener Geräte, bietet eine ideale Angriffsfläche für sich selbst replizierenden Schadcode. Aus diesem Grund ist Anti-Virensoftware ein zentraler Bestandteil jeder Sicherheitsstrategie. Eine solche Lösung ist stark abhängig von Signatur-Updates und schützt nur vor bekannten Malware. Nicht entdecktes Malware kann als erstes den Update-Mechanismus des Antivirus deaktivieren um später nicht entdeckt zu werden.
BarthaM@27
    59
oliver@29
    60
\section{Security by Isolation}
oliver@32
    61
oliver@32
    62
Heutige Mainstream-Betriebssysteme für den Desktop wie Apple Mac OS X, Microsoft Windows oder auch Linux, sind unzureichend, wenn es um die Datensicherheit geht. Ihr gemeinsames und unüberwindliches Problem liegt darin, dass sie nicht in der Lage sind, die verschiedenen Programme, die gleichzeitig auf einem Rechner laufen, ausreichend von einander zu isolieren. Wenn zum Beispiel der Browser einer Nutzerin oder eines Nutzers durch einen aus dem Netz geladenen Trojaner kompromittiert wird, ist das Betriebssystem normaler Weise nicht in der Lage, andere Software oder auch Daten davor zu schützen, ebenfalls kompromittiert zu werden. Besonders schwerwiegend wird das Problem, wenn wichtige Systemkomponenten, wie etwa die Gerätetreiber, kompromittiert wurden. In so einem Fall ist keines der genannten Betriebssysteme in der Lage, die übrige Software oder die Daten der NutzerInnen vor dem kompletten Kompromittieren zu schützen. Dieser kritische Zustand lässt sich direkt auf Designentscheidungen der Systemarchitekturen zurückführen. Diese schließen zu komplexe Programmierschnittstellen (API) ebenso ein wie unsichere graphische Nutzerschnittstellen (GUI) und monolithische Kernelarchitekturen.
oliver@32
    63
oliver@32
    64
Bisher wird vor allem auf reaktive Ansätze zurückgegriffen. Viele Anbieter versuchen, jede bekannte Sicherheitslücke zu patchen. Solche Ansätze skalieren aber nicht nur nicht, sie funktionieren schon deshalb nicht, weil nur bekannte und vor allem viel genutzte Angriffe abgewehrt werden können. Vor neuen oder nicht so bekannten, gezielter ausgenutzten Sicherheitslücken kann so nicht geschützt werden.
oliver@32
    65
oliver@32
    66
Die Alternative zu diesem als ``Security by Correctness'' bekannten Ansatz verfolgt eine ganz andere Herangehensweise: ``Security by Isolation'' (Sicherheit durch Isolation). 
oliver@32
    67
Die Idee dabei ist, ein System in getrennte Untersysteme aufzuspalten so dass ein Fehlverhalten eines Teilsystems nicht andere Teilsysteme berührt. Die Aufteilung in sinnvolle Untersysteme und das Einrichten geeigneter Zugriffsrichtlinien ist einer der Hauptaufgaben und größten Herausforderungen. Dieser Ansatz vermittelt nun Anwenderzugriffe und -Umgang mit Ressourcen aus unsicheren oder zweifelhaften Quellen wie Internet oder Mobile Datenträger indem die dabei verwendete Teilsysteme durch Virtualisierung voneinander getrennt werden. Durch den Einsatz dieser Virtualisierungsschicht werden die darin gekapselten Systemkomponenten vom Trägersystem unabhängig und sind somit auf einer Vielzahl aktueller und moderner Desktop Betriebssysteme implementier- und ausführbar.
oliver@32
    68
oliver@32
    69
Es gibt zwei wichtige Projekte, die dieser Herangehensweise folgen: Ethos  ist ein sicheres Betriebssystem, das auf den Xen Hypervisor aufsetzt. Seine Entwicklung wird von Jon Solworth von der University of Illinois, Chicago, geleitet und von den Kryptographen Daniel Bernstein und einem Team von Mitwirkenden unterstützt. Qubes  wird von Joana Rutkowska, die durch ihre Arbeit an Rootkits bekannt ist, und von Rafal Woitcuk, beide vom Invisible Thing Lab, entwickelt.
oliver@32
    70
oliver@32
    71
Beide Systeme setzen allerdings auf den Xen Hypervisor und damit auf ein Linux (bzw. BSD oder Solaris) Grundsystem, auf dem in Folge weitere Systeme aufgesetzt werden. Da das Open Security Projekt sich an den Einsatz im öffentlichen Bereich orientiert ist von einer großflächige Umstellung auf ein derartiges bare-metal Virtualisierungssystem abzusehen. 
oliver@32
    72
oliver@32
    73
Im Open Security Projekt werden die ``Security by Isolation'' Konzepte angewendet um mögliche durch Malware verursachten Schäden mittels einer in erster Linie hosted Virtualisierung entgegenzuwirken. Eine zentralisierte und im Fehlen einer Verbindung zum zentralen Dienst auch lokale Anti-Virus Architektur detektiert in einen eingegrenzten Bereich Malware bevor diese auf sensible Bereich des Systems übergreifen kann. Die dabei entstandenen Komponenten und Dienste lassen sich aber auch auf eine bare-metal Virtualisierung wie XEN implementieren.
oliver@32
    74
oliver@29
    75
oliver@28
    76
\section{Architektur}
oliver@28
    77
oliver@32
    78
Aus der Perspektive von Open Security werden zwei Sicherheitszonen identifiziert: das sichere Netzwerk (SN) ist das zu schützende Unternehmensnetzwerk des Bedarfsträgers. Die Interaktion des Benutzers ist aufgrund der sensiblen Natur der Informationen und Daten zur Zeit auf dieses Netz begrenzt. Das SN gilt als vertrauenswürdige und wird durch Isolation von der Außenwelt getrennt. Es existieren sehr strenge Zugangsbeschränkungen zu externen Ressourcen um die Datensicherheit im SN nicht zu kompromittieren. Die Sicherung der Interaktion mit eben unsicheren oder zweifelhaften Ressourcen (mobile Datenträger und Internet) kann auf diese großen Herausforderungen heruntergebrochen werden:
BarthaM@31
    79
oliver@32
    80
\begin{enumerate}
oliver@32
    81
    \item Vermittlung und Steuerung des Zusammenspiels mit unsicheren Ressourcen.
oliver@32
    82
    \item Schutz des SN vor Malware.
oliver@32
    83
    \item Schutz sensibler Informationen vor Diebstahl oder durch Verlust von tragbaren Geräten.
oliver@32
    84
\end{enumerate}
BarthaM@31
    85
oliver@32
    86
Prinzipiell kann eine bare-metal- als auch user-space- Virtualisierungslösungen verwendet werden. Im Open Security Projekt existiert eine generische Virtual Machine (VM) Orchestrierung Schicht, die leicht erweiterbar ist, um weitere Hypervisoren unterstützen können. Um eine fließende Migration einer bestehenden Infrastruktur zu ermöglichen basiert die aktuelle Implementierung auf einem user-space Virtualisierungslösung (VirtualBox) auf einem bereits existierenden Betriebssystem (Windows).
BarthaM@31
    87
oliver@32
    88
\begin{center}\textbf{TBD:} Architechture Bild 6 - (Sichere Internet-Zugang)\end{center}
BarthaM@31
    89
oliver@32
    90
Die wichtigsten architektonischen Komponenten sind der Open Security Manager (OSM) und die Security Virtual Machine (SVM). Das Open Security System ist rund um die SVM, eine auf Linux basierende virtuellen Maschine inklusive der tatsächlichen Subsystemen, welche die Interaktion des Benutzers mit den unsicheren Ressourcen vermittelt, gebaut. Der OSM ist eine Management Schichte zur Steuerung der Virtuellen Maschinen samt Benutzeroberfläche und ist für die Verarbeitung von Benutzeranforderungen sowie Hardware-Events (bsp. USB) verantwortlich.
oliver@28
    91
oliver@32
    92
Beim Start einer Browser-Sitzung kümmert sich der OSM um die Instanziierung, Konfiguration und Start einer neuen SVM, welche speziell nur für diese Browser-Sitzung verantwortlich ist. Die neue SVM-Instanz wird als Disposable Virtual Maschine (DVM - ``Wegwerf'' Virtuelle Maschine) aus einer vorhandenen SVM-Vorlage erstellt .
oliver@32
    93
oliver@32
    94
DVMs sind eigens hergestellte virtuelle Maschinen, die leicht instanziiert und wieder entsorgt werden können, mit ebenfalls sehr kurzen Bootzeiten. Das DVM Konzept wird durch die Nutzung von unveränderlichen virtuellen Festplatten-Snapshots und differenzierender Festplatten-Abbildungen sowie mit einer SVM-Vorlage im Ruhezustand implementiert. Diese Lösung stellt sicher, dass alle Änderungen der Browser-Sitzung (wie auch möglicherweise unerkannte Malware) in der DVM an der neuen SVM-Instanz gemacht werden und bei Beendigung der Sitzung gelöscht werden.
oliver@32
    95
oliver@32
    96
Außerdem hat diese Lösung den Vorteil der Minimierung an Plattenplatznutzung und ermöglicht eine einfache Aktualisierung der SVM Vorlage. Durch das Update der Vorlage wirken Änderungen in allen neu erstellten SVM Instanzen. Der Update-Mechanismus wird durch das OSM Update-Backend angestoßen, welcher auf ein Paket-Repository des Open Security Projekt zurückgreift.
oliver@32
    97
oliver@32
    98
Die Referenz SVM-Implementierung basiert auf einer minimalen Debian Installation. Die installierten Software-Pakete enthalten einen Web-Browser, Verschlüsselungs-Software, Antiviresnsoftware, einen SSH-Server und einen SAMBA-Server.
oliver@32
    99
oliver@32
   100
Aus Sicht des OSM umfasst das Starten einer neuen Browser-Sitzung mehrere Konfigurationsaufgaben. Der OSM startet einen X11-Server auf dem Host-Betriebssystem und nutzt einen SSH-Client mit X-Weiterleitung um den Browser innerhalb der SVM auszuführen. Dies ermöglicht eine nahtlose Integration des Browserfensters innerhalb der Host-Umgebung und lässt die Anwendung, welche in einer DVM läuft, native in der gewohnten Umgebung erscheinen. Um auf mögliche heruntergeladene Dokumente zuzugreifen, nachdem diese geprüft wurden, wird zusätzliche der Download-Ordner des Browsers von der SVM als SAMBA Netzlaufwerk im Hostsystem eingebunden.
oliver@32
   101
oliver@32
   102
Der SVM-Instanz wird eine Host-Only-Netzwerkschnittstelle für die Kommunikation mit dem Host zugewiesen. Auf dieser sind nur vom Host initiierte Verbindungen zugelassen. Die SSH- Kommunikation wird durch automatisch generierte Public/Private Schlüsselpaare gesichert und der Verbindungsaufbau durch Bereitstellen der authorized\_keys Datei in einem spontan erzeugten ISO-Image ermöglicht. Zusätzlich wird der SVM eine NAT-Schnittstelle für den Zugriff auf das Internet zugewiesen, auf welcher die Kommunikation durch den Host durchgeleitet wird.
oliver@28
   103
oliver@28
   104
oliver@28
   105
\end{document}