Virtualisierung oder Separation? Ein gewaltiger Unterschied! - GeNUA
Virtualisierung oder Separation? Ein gewaltiger Unterschied! - GeNUA
Virtualisierung oder Separation? Ein gewaltiger Unterschied! - GeNUA
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
<strong>Virtualisierung</strong> <strong>oder</strong> <strong>Separation</strong>? <strong>Ein</strong> <strong>gewaltiger</strong> <strong>Unterschied</strong>!<br />
Von Alexander von Gernler, Technischer Botschafter der genua mbh<br />
<strong>Virtualisierung</strong> vereinfacht IT-Betrieb<br />
In den letzten Jahren geht der Trend eindeutig zur <strong>Virtualisierung</strong> von Rechnern –<br />
Treiber sind hier besonders die Administratoren. Zu gewichtig sind die Vorteile, die<br />
sich durch das Zusammenfassen mehrerer, bisher physikalischer Rechner auf<br />
einem großen <strong>Virtualisierung</strong>s-Host für den täglichen Betrieb ergeben. Zum einen<br />
werden ganz offensichtlich Ressourcen sowohl auf Seiten des Hardware-<strong>Ein</strong>satzes<br />
als auch bei den laufenden Stromkosten eingespart. Zum anderen schafft<br />
die Zusammenlegung auch eine viel bessere Ausnutzung der vorhandenen Hardware<br />
sowie ein größeres Potenzial hinsichtlich Peak Performance: Sind einzelne<br />
Instanzen gerade wenig beschäftigt, steht die nicht genutzte Leistung automatisch<br />
anderen Instanzen zur Verfügung, die dadurch möglicherweise noch viel besser<br />
nach oben skalieren können, als sie es auf realer Hardware hätten tun können.<br />
<strong>Ein</strong> <strong>Virtualisierung</strong>s-Host hat eben ganz andere Leistungsdaten als ein einzelner<br />
kleiner Server.<br />
<strong>Ein</strong>e günstige Lösung<br />
All diese tollen Merkmale kommen – vordergründig gesehen – zu einem relativ<br />
geringen Preis: Der Leistungsverlust durch die <strong>Virtualisierung</strong> ist zwar zu sehen,<br />
hält sich aber in Grenzen – vor allem im Angesicht der entgegenstehenden Vorteile.<br />
Hinzu kommen eventuell noch Anschaffungskosten für die verwendete<br />
<strong>Virtualisierung</strong>ssoftware, sofern nicht auf eine ohnehin freie Lösung zurückgegriffen<br />
wird. Die Hardware für den <strong>Virtualisierung</strong>s-Host selbst muss zwar auch<br />
angeschafft werden, allerdings hätten auch die bisher einzeln existierenden<br />
Rechner regelmäßige Hardware-Upgrades benötigt. Dieser Effekt hält sich also<br />
die Waage.<br />
genua gibt sich nicht mit einfachen Antworten zufrieden<br />
Grund genug für genua, dem Trend <strong>Virtualisierung</strong> auch von der Seite der<br />
Sicherheitsforschung nachzuspüren und Risiken und Potenziale aus unserer ganz<br />
speziellen Sicht als Hersteller von Hochsicherheits-Firewalls auszuloten. <strong>Ein</strong>en<br />
Anfang bildet hier das Forschungsprojekt vmFIRE, das genua in Zusammenarbeit<br />
mit der Brandenburgischen Technischen Universität (BTU) Cottbus durchführt:<br />
Hier soll die Frage geklärt werden, wie ein effektives und einigermaßen sicheres<br />
Firewalling zwischen verschiedenen virtualisierten Instanzen auf einem <strong>oder</strong> mehreren<br />
<strong>Virtualisierung</strong>s-Hosts denkbar sein kann. Im Falle einzelner physikalisch<br />
getrennter Rechner wäre ein Firewalling zwischen den Servern ja gar kein Problem<br />
– hier haben wir auch schon lange Produkte dafür. Die <strong>Virtualisierung</strong> ändert<br />
aber das Szenario, und auf diese neuen Fragestellungen muss genua eine<br />
zufriedenstellende Antwort finden. Damit greifen wir das Setup vieler Firmen auf,<br />
bei denen ein <strong>oder</strong> mehrere <strong>Virtualisierung</strong>s-Hosts im Rack stehen und die<br />
Seite 1
Kommunikation über das Netzwerk längst nicht mehr die einzige denkbare Form<br />
des Informationsaustauschs zwischen Rechnern ist.<br />
Irrglaube sichere <strong>Virtualisierung</strong><br />
Was einem als Betreiber einer (egal welcher) <strong>Virtualisierung</strong>slösung nämlich klar<br />
sein muss: Es handelt sich wie immer auch nur um ein Stück von Menschen<br />
geschriebener Software, und die ist potenziell fehlerbehaftet. Diese Vermutung<br />
wurde uns in der Recherchephase des Forschungsprojekts auch eindrucksvoll<br />
bestätigt, als wir den so genannten Security Record der einzelnen Lösungen<br />
überprüften: Wie viele Sicherheitslücken wurden in Form von so genannten CVE-<br />
<strong>Ein</strong>trägen für die einzelnen Lösungen gemeldet, und welches Potenzial steckte<br />
hinter diesen Sicherheitslücken? Zusammenfassend kann man sagen, dass die<br />
<strong>Virtualisierung</strong>slösungen VirtualBox, VMWare, Xen und KVM/Qemu in den Jahren<br />
2007 bis 2012 zusammen über 100 CVE-<strong>Ein</strong>träge produziert haben, also eine<br />
signifikante Angriffsfläche existiert.<br />
Es ist daher realistisch, dass Angreifer aus einer <strong>Virtualisierung</strong>slösung ausbrechen<br />
und den gesamten <strong>Virtualisierung</strong>s-Host unter ihre Kontrolle bringen können.<br />
Dies kann entweder durch Lücken im Hypervisor (der <strong>Virtualisierung</strong>sschicht)<br />
als auch durch Manipulation des Netzwerkverkehrs auf den virtuellen Netzwerkschnittstellen<br />
und Software-Bridges geschehen, die bei diesen Lösungen zum<br />
<strong>Ein</strong>satz kommen. Aus diesem Grund hat genua bisher auch ehrlich auf Anfragen<br />
von Kunden antworten müssen, dass wir den <strong>Ein</strong>satz unserer Firewall-Produkte<br />
nur auf echter Hardware empfehlen und einem virtualisierten <strong>Ein</strong>satz skeptisch<br />
gegenüber stehen.<br />
Mobile Firewall für Roadwarriors und sichere Heimarbeit<br />
Verlassen wir für einen Moment die Thematik der <strong>Virtualisierung</strong> – wir kommen<br />
später in anderer Form noch einmal darauf zurück. Betrachten wir nun kurz die<br />
mobile Firewall genucard, die gerade für Arbeitsplätze mit hohem Sicherheitsbedarf<br />
das vertrauenswürdige Arbeiten im Außendienst <strong>oder</strong> per sicherem Heimarbeitsplatz<br />
ermöglicht.<br />
Seite 2<br />
Mobile Security Device genucard: separierte Sicherheitsfunktionen<br />
durch eigene Hardware
Die Firewall ist nicht wie bei anderen so genannten Personal Firewalls eine<br />
weitere Software auf dem Laptop <strong>oder</strong> dem Heimrechner, die durch Knacken<br />
dieses Rechners umgangen werden kann. Es handelt sich im Gegenteil um eine<br />
autonom laufende, kleine Hardware-Appliance, die per USB angeschlossen wird<br />
und aus Sicht des Laptops wie eine weitere Netzwerkschnittstelle aussieht. In<br />
Wirklichkeit verbirgt sich aber viel mehr dahinter: Die genucard ist ein vollwertiger<br />
kleiner Rechner, der etwa ein sicheres VPN in das Firmennetz aufbauen kann,<br />
ohne dass dies eine extra Konfiguration auf dem Laptop <strong>oder</strong> Heimarbeitsplatz<br />
erfordert. Auch muss dem Client nicht mehr getraut werden: Selbst wenn der<br />
Client-Rechner kompromittiert sein sollte, ist die Firewall samt sicherem VPN<br />
immer noch intakt und kann auch nicht umgangen werden, da der Client ja nur<br />
eine simulierte Netzwerkschnittstelle sieht.<br />
Sicher, aber in einigen Fällen unpraktisch<br />
Die Produkteinführung der genucard im Jahr 2009 war ein voller Erfolg: Gleich<br />
mehrere Kunden mit einem erhöhten Schutzbedürfnis orderten größere<br />
Stückzahlen. So weit, so gut. Allerdings erreichten uns auch Hinweise von<br />
Nutzern, dass man mit der genucard ja immer ein weiteres USB-Gerät dabei<br />
haben müsse, wenn man mobil unterwegs sei – ein berechtigter <strong>Ein</strong>wand. Dies<br />
spielt zwar im Homeoffice keine Rolle, aber für den Roadwarrior ist es eine lästige<br />
Zusatzausrüstung. Wir erhielten daher auch Fragen, ob es nicht möglich sei, das<br />
Gerät in ein Notebook zu integrieren. Aufgrund der sehr hohen Integrationsdichte<br />
der Komponenten in heutigen Notebooks war das leider nicht so einfach möglich,<br />
ganz abgesehen davon, dass wir eine breite Palette ständig wechselnder<br />
Notebook-Hardware unterstützen müssten.<br />
<strong>Ein</strong>e vielversprechende Alternative<br />
Greifen wir also den obigen Gedanken über <strong>Virtualisierung</strong> auf: Wären all die<br />
Sicherheitsprobleme nicht, dann wäre eigentlich eine virtualisierte Firewall genau<br />
die Lösung: Man schaltet auf einem Gerät die Firewall vor die gesamte externe<br />
Kommunikation, und das Windows- <strong>oder</strong> Linux-System auf dem Laptop darf nicht<br />
mehr selbst mit der Außenwelt kommunizieren. Trotzdem haben wir ja oben<br />
gehört, dass dies mit den heutigen <strong>Virtualisierung</strong>slösungen zum einen nicht geht,<br />
und zum anderen für die Sicherheit nicht wirklich garantiert werden kann.<br />
<strong>Ein</strong> neuer Ansatz muss her<br />
Also nochmal zurück auf Start: Warum sind die herkömmlichen <strong>Virtualisierung</strong>slösungen<br />
unsicher? Zwei Gründe kommen zum Vorschein:<br />
1. Ausrichtung auf andere Ziele<br />
<strong>Ein</strong>e <strong>Virtualisierung</strong>slösung ist zunächst einmal das gemeinsame Nutzen von<br />
Hardware. Die Abschottung zwischen den Instanzen dient eher dazu, die einzelnen<br />
Systeme überhaupt gemeinsam auf der gleichen Plattform betreiben zu<br />
können, als sie wirklich hart zu trennen. Hier müsste man also mit <strong>Separation</strong> im<br />
Hinterkopf an das Problem herangehen.<br />
Seite 3
2. Zu hohe Komplexität<br />
Die heutigen <strong>Virtualisierung</strong>slösungen sind vor allem auf Performance ausgerichtet<br />
und wollen dem Benutzer viele interessante Leistungsmerkmale bieten.<br />
Hierdurch wächst die Komplexität der Software, was man in einem Anstieg der<br />
Anzahl von Quellcode-Zeilen (LOC, Lines of Code) messen kann. Mit dem<br />
Wissen, dass pro Codezeile eine gewisse statistische Wahrscheinlichkeit eines<br />
Software-Fehlers einhergeht, folgt also: <strong>Ein</strong>e sichere <strong>Separation</strong>slösung sollte<br />
möglichst wenig LOC in den wirklich privilegierten Kernbereichen haben – <strong>oder</strong> mit<br />
anderen Worten: Die Anzahl der Codezeilen, die fehlerfrei implementiert sein<br />
müssen, damit die Sicherheitsfunktionalität gewährleistet ist, sollte möglichst gering<br />
sein.<br />
Das Kaninchen aus dem Zylinder: VS-Technologie von genua<br />
Die Abteilung Forschung und Entwicklung bei genua hat bereits seit zwei Jahren<br />
an genau einer solchen Technologie gearbeitet. Das Konzept stützt sich auf das<br />
von akademischer Seite bekannte Konzept des Microkernels (vgl.<br />
http://en.wikipedia.org/wiki/Microkernel), von denen es einige unabhängige Familien<br />
gibt.<br />
genua hat hier auf die L4-Technologie gesetzt, wie sie zuletzt auch an der TU<br />
Dresden (vgl. http://os.inf.tu-dresden.de/L4Re/overview.html) entwickelt wurde.<br />
Wir konnten also auf gesicherte akademische Kenntnisse aufsetzen und mussten<br />
den vorhandenen Code lediglich aus seinem Elfenbeinturm führen und auf Praxistauglichkeit<br />
trimmen: Klar, dass aus wissenschaftlicher Sicht vor allem neue<br />
Konzepte interessant sind. Stabilität, Hardware-Unterstützung <strong>oder</strong> Performance<br />
stehen dagegen weniger im Vordergrund. Das ist aber kein Problem, hier haben<br />
wir ja Erfahrung. Was aber bemerkenswert ist: Der L4-Microkernel hat nur etwa<br />
20.000 Zeilen Code. Das ist eine lächerlich kleine Zahl, wenn man sie etwa mit<br />
den LOC des Linux-Kernels vergleicht. Das entpackte Archiv des Kernels 3.8.1<br />
kommt auf 16,4 Millionen Zeilen Code!<br />
Microkernel, wie funktioniert das?<br />
Klar, dass man in 20.000 Zeilen Code nicht alles unterbringt, was in einem<br />
schwergewichtigen Betriebssystem drinsteckt. Das ist aber auch gar nicht der<br />
Anspruch von L4. Der Microkernel kümmert sich lediglich um eine sehr<br />
zuverlässige Kompartmentierung: Er hat zum Startzeitpunkt des Systems vollen<br />
Zugriff auf die Hardware und gibt jeweils nur streng definierte Kompetenzen<br />
(Capabilities) zum Zugriff auf Teile der Hardware an einzelne Tasks weiter.<br />
Bestandteile eines monolitischen Kerns (z. B. Linux <strong>oder</strong> BSD) wie etwa einen<br />
Dateisystemtreiber sucht man bei L4 zunächst vergebens. Das ist nicht Aufgabe<br />
des minimalen Systems, sondern wird auch streng isoliert in einem eigenen Task<br />
abgehandelt. Auf diese Weise bleibt die so genannte Trusted Computing Base,<br />
also der Teil des Systems, der privilegierten Hardware-Zugriff hat, zu jeder Zeit<br />
sehr schlank. In die Hände spielt unseren Forschern auch noch, dass von den<br />
Prozessorherstellern spezielle Hardware-Unterstützung für <strong>Virtualisierung</strong>slösun-<br />
Seite 4
gen entwickelt wurde. So besitzen aktuelle Intel-Prozessoren die Erweiterungen<br />
VT-d und VT-x. Von beiden profitiert auch der Microkernel, um die Isolation der<br />
Tasks effektiv durchführen zu können.<br />
Was funktioniert schon?<br />
Bereits auf der diesjährigen CeBIT konnte genua ein Laptop mit zwei voneinander<br />
separierten L4-Kompartments präsentieren. In einem Kompartment läuft ein virtualisiertes<br />
Windows, im anderen Kompartment das Mobile Security Device<br />
genucard. Die <strong>Separation</strong>splattform stellt sicher, dass das Windows nur über die<br />
genucard mit der Außenwelt kommunizieren kann.<br />
Kein Problem also, vom Messestand aus mit dem Internet Explorer eine Seite aus<br />
dem Intranet von genua anzuschauen, alles über das sichere VPN einer<br />
genucard. Wir nennen dieses auf unserer Technologie basierende Produkt vs-top.<br />
Ausblick<br />
Die besprochene Technologie lässt aber neben dem vs-top auch noch viele<br />
andere <strong>Ein</strong>satzszenarien denkbar werden: Etwa zur Absicherung kritischer<br />
Infrastrukturen, die fahrlässigerweise heute immer öfter per IP erreichbar sind (vgl.<br />
http://cyberarms.wordpress.com/2013/03/19/worldwide-map-of-internetconnected-scada-systems/).<br />
Oder aber zum <strong>Ein</strong>satz auf einem Smart Meter Gateway,<br />
das intelligente Stromzähler vor unerlaubten Zugriffen von außen schützt.<br />
genua ist hier bereits mit einigen Partnern im Gespräch und weitere Neuigkeiten<br />
zu diesen Themen werden folgen.<br />
Seite 5