DE102006044005A1 - Verfahren, Sicherheitseinheit und Verwendung der Sicherheitseinheit zum sicheren Betrieb von zumindest zwei Betriebssystemen auf einer gemeinsamen Hardware - Google Patents

Verfahren, Sicherheitseinheit und Verwendung der Sicherheitseinheit zum sicheren Betrieb von zumindest zwei Betriebssystemen auf einer gemeinsamen Hardware Download PDF

Info

Publication number
DE102006044005A1
DE102006044005A1 DE102006044005A DE102006044005A DE102006044005A1 DE 102006044005 A1 DE102006044005 A1 DE 102006044005A1 DE 102006044005 A DE102006044005 A DE 102006044005A DE 102006044005 A DE102006044005 A DE 102006044005A DE 102006044005 A1 DE102006044005 A1 DE 102006044005A1
Authority
DE
Germany
Prior art keywords
unit
virtualization
operating systems
access
security unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
DE102006044005A
Other languages
English (en)
Inventor
Steffen Fries
Eric Scheer
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens AG filed Critical Siemens AG
Priority to DE102006044005A priority Critical patent/DE102006044005A1/de
Publication of DE102006044005A1 publication Critical patent/DE102006044005A1/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6281Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database at program execution time, where the protection is within the operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2105Dual mode as a secondary aspect
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2149Restricted operating environment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping

Abstract

Die Erfindung betrifft ein Verfahren zum sicheren Betrieb von zumindest zwei Betriebssystemen auf einer gemeinsamen Hardware, wobei eine Virtualisierungseinheit einen Zugriff zwischen den Betriebssystemen und der gemeinsamen Hardware kontrolliert, bei dem mit Hilfe einer Sicherheitseinheit eine Integrität der Virtualisierungseinheit gewährleistet wird und durch die Sicherheitseinheit ein Zugriff auf Daten beim Ausführen eines der beiden Betriebssysteme derart durchgeführt, dass das ausführende Betriebssystem nur Zugriff auf die ihm zugeordneten Daten erhält. Ferner betrifft die Erfindung die Sicherheitseinheit, die zum Ausführen des Verfahrens geeignet ist. Schließlich ist eine Verwendung der Sicherheitseinheit Bestandteil der Erfindung.

Description

  • Die Erfindung betrifft ein Verfahren, eine Sicherheitseinheit und eine Verwendung der Sicherheitseinheit zum sicheren Betrieb von zumindest zwei Betriebssystemen auf einer gemeinsamen Hardware.
  • Auf Grund der modernen Kommunikation werden auch vertrauliche Daten, die für eine Firma einen grundlegenden Wert darstellen, computerbasiert verarbeitet. Diese vertraulichen Daten werden oftmals auf tragbaren Rechnern, wie zum Beispiel Laptops oder PDA's (PDA – Personal Digital Assistant) gespeichert.
  • Um einen Zugriff Dritter auf die vertraulichen Daten zu verhindern, werden diese vertraulichen Daten beispielsweise mit einem Softwareprogramm CryptoEx Security Software einer Firma PGP Corporation verschlüsselt gespeichert. Dabei können vertrauliche Daten mittels geeigneter Verschlüsselung in E-Mail versandt werden.
  • Diese Softwareprogramme erfüllen jedoch nicht Anforderungen, um Daten zum Beispiel für militärische Anwendungen sicher auf einem Endgerät zu verwahren. Beispielsweise werden im Umfeld von militärischen Anwendungen Gefahrenpotenziale in unerwünschten Softwareprogrammen, wie zum Beispiel Viren oder Trojanischen Pferden oder im Betriebssystem selbst gesehen. Bei einem Betriebssystem kann der Benutzer nicht davon ausgehen, dass vom Hersteller des Betriebssystems keine geheimen Zugänge zu Daten des Betriebssystems existieren, mit denen vertrauliche Daten, zum Beispiel beim Lesen durch einen Anwender, abgegriffen werden können.
  • Ein Ansatz zur Lösung dieser Anforderung kann durch eine Benutzung von komplett getrennten Systemen erzielt werden. Dabei werden physikalisch getrennte Systeme eingesetzt, bei denen ein Datenaustausch per Hand vorgenommen wird. Dies ist in der Praxis nicht besonders praktikabel, da sowohl ein administrativer Aufwand zur Verwaltung als auch Infrastrukturkosten aufgrund der getrennten Systeme erheblich sind. Ein weiterer Ansatz ist eine Kapselung des Betriebssystems, um so besser in der Lage zu sein, die Kommunikation von bzw. zum Betriebssystem zu kontrollieren. Dies kann durch eine Virtualisierungsschicht geschehen.
  • Eine Virtualisierungsschicht ermöglicht virtuelle Container, in denen Betriebssysteme eigenständig ausgeführt werden können. Dabei definiert die Virtualisierungsschicht eine Abstraktion der Hardware gegenüber den jeweiligen virtuellen Containern. Hierbei sind folgende Verfahren/Produkte bekannt:
    • – VM Ware (www.vmware.com): Dieses Produkt ermöglicht unter Anderem die Verwendung von virtuellen Containern, in denen eigene Betriebssysteme laufen. Es kontrolliert jedoch nicht den Zugriff auf Ressourcen der Hardware, wie zum Beispiel den Grafikspeicher.
    • – XEN (www.xen.org): In diesem Open Source Projekt wird eine Virtualisierungsschicht definiert, die eine Abstraktion der Hardware gegenüber dem eigentlichen Betriebssystem, mit dem der Benutzer arbeitet, zur Verfügung stellt.
    • – Twinsafe (CE Infosys, www.ce-infosys.com): Dieses Produkt bietet die Möglichkeit, die Daten der virtuellen Container strikt voneinander zu trennen. Um von einem zu einem weiteren Container umzuschalten, muss jedoch das im bisherigen Container laufende Betriebssystem beendet und das in dem weiteren Container zu startende Betriebssystem gebootet werden. Hierbei ist ein schnelles Umschalten zwischen den Containern, das heißt zwischen den Betriebssystemen, nicht möglich.
    • – Virtual Desktop (Secunet, www.secunet.com): Dieses Produkt bietet virtuelle Container, wobei jedem Container ein Schlüssel zur Verwaltung container-bezogener Daten zugeordnet wird.
  • Die genannten Produkte ermöglichen eine Verbesserung der Sicherheit bei einem Betrieb eines oder mehrerer Betriebssysteme mit vertraulichen Daten. Jedoch zeigen die genannten Verfahren/Produkte Nachteile auf, die ein Angreifer nutzen kann, um vertrauliche Daten abzugreifen.
  • Der Erfindung liegt die Aufgabe zu Grunde, ein Verfahren, ein System und eine Sicherheitseinheit anzugeben, die eine Erhöhung einer Sicherheit gegenüber der bekannten Verfahren/Produkten erreicht, und die auf einer gemeinsamen Hardware ausführbar sind.
  • Diese Aufgabe wird durch die unabhängigen Ansprüche gelöst. Sonstige Weiterbildungen der Erfindung sind in den abhängigen Ansprüchen wiedergegeben.
  • Die Erfindung betrifft ein Verfahren zum sicheren Betrieb von zumindest zwei Betriebssystemen auf einer gemeinsamen Hardware, wobei eine Virtualisierungseinheit einen Zugriff zwischen dem Betriebssystem und der gemeinsamen Hardware kontrolliert, bei dem mit Hilfe einer Sicherheitseinheit eine Integrität der Virtualisierungseinheit gewährleistet und durch die Sicherheitseinheit ein Zugriff auf Daten bei einem Ausführen eines der beiden Betriebssysteme derart durchgeführt wird, das das ausführende Betriebssystem nur Zugriff auf die ihm zugeordneten Daten hat.
  • Durch die Überprüfung der Integrität der Virtualisierungseinheit, das heißt eines Bootloaders und/oder einer Virtualisierungssoftware, wird erreicht, dass eine Manipulation der Virtualisierungseinheit verhindert und somit ein Angriff zum Einschleusen von schadhafter Software und/oder zum unerlaub ten Abgreifen von Daten vermieden wird. Ferner wird durch die Kontrolle des Zugriffs auf Daten bei einem der Betriebssysteme sicher gestellt, dass zum Einen jedes Betriebssystem nur auf seine eigenen, das heißt ihm zugeordneten, Daten zugreifen kann, und zum Anderen, dass auch ein Angreifer keinen direkten Zugriff auf diese Daten hat, da ein Zugriff auf die Daten durch die Sicherheitseinheit kontrolliert wird. Im Rahmen dieser Erfindung wird unter sicherer Betrieb der Betrieb von mehr als einem Betriebssystem auf einer gemeinsamen Hardware in der Art und Weise verstanden, dass Daten eines der Betriebssysteme vor ungewolltem Zugriff des anderen Betriebssystems oder eines Angreifers beim Ausführen des Betriebssystems geschützt sind. Der Bootloader hat die Aufgabe die Virtualisierungseinheit zu initialisieren und zu starten. Starten bedeutet hierbei das Aktivieren der Virtualisierungssoftware, die die Zugriffe von in virtuellen Containern laufenden Betriebssystemen auf eine gemeinsame Hardware kontrolliert, wie bspw. welches Betriebssystem wann auf eine Komponente Monitor schreiben oder Daten von einer Komponente Festplatte anfordern darf. Somit kann die Virtualisierungssoftware Komponenten und/oder Funktionen von Komponenten der gemeinsamen Hardware für jedes Betriebssystem separat sperren und/oder freigeben.
  • Vorzugsweise werden die den jeweiligen Betriebssystemen zugeordneten Daten jeweils verschlüsselt als verschlüsselte Daten in der gemeinsamen Hardware abgelegt und ein jeweiliger Zugriff auf die verschlüsselten Daten nur mit Hilfe von jeweils einem jedem Betriebssystem zugeordneten Zugriffsschlüssel durchgeführt. Hiermit wird erreicht, dass mit Hilfe von Zugriffsschlüsseln ein Zugriff auf Daten der jeweiligen Betriebssysteme kontrolliert wird.
  • In einer Ausführungsform werden die Zugriffsschlüssel und/oder der Schlüssel der Virtualisierungsschicht auf einer von der gemeinsamen Hardware und der Sicherheitseinheit brennbaren Speichereinheit abgelegt und durch die Sicherheitseinheit zum Ent- und/oder Verschlüsseln von Daten von der trennbaren Speichereinheit gelesen. Durch die Trennung der Zugangsschlüssel von der Sicherheitseinheit wird ermöglicht, dass die Schlüssel auf einem einfachen und kostengünstigen Speichermedium, zum Beispiel einer Schlüsselkarte, gespeichert werden können, und durch den Benutzer bei Verlassen seines mit der Sicherheitseinheit ausgestatteten Endgeräts, zum Beispiel eines Laptops, in einfacher Weise mitgenommen werden können. Hierdurch wird die Sicherheit weiter erhöht.
  • Ferner kann in einer Weiterbildung der Sicherheitseinheit mitgeteilt werden, welches der Betriebssysteme im Folgenden aktiv ist, und durch die Sicherheitseinheit aus einer Menge an Zugriffsschlüsseln der Betriebssysteme nur der Zugriffsschlüssel des aktiven Betriebssystems für ein Ent- und/oder Verschlüsseln zur Verfügung gestellt. Durch diese Erweiterung ist nur einer der Zugriffsschlüssel verfügbar, wobei dieser Zugriffsschlüssel ausschließlich zum Ent-/und/oder Verschlüsseln von Daten des aktiven Betriebssystems geeignet ist. Hierdurch wird erreicht, dass nur auf diejenigen Daten zugegriffen werden kann, die zum aktiven Betriebssystem gehören, da zum Zugriff auf Daten eines anderen Betriebssystems ein weiterer Zugriffsschlüssel benötigt werden würde. Diese Weiterbildung der Erfindung erzielt eine weitere Steigerung der Sicherheit.
  • Vorzugsweise wird ein Bootloader zum Starten der Virtualisierungseinheit in der Sicherheitseinheit abgelegt und von dort ausgeführt. Durch diese Erweiterung wird erreicht, dass ein Manipulationsversuch der Virtualisierungseinheit in der Sicherheitseinheit durchgeführt werden müsste. Ist beispielsweise die Sicherheitseinheit in Hardware ausgeführt oder für einen Angreifer schwer zugänglich, weil die Sicherheitseinheit durch einen Benutzer mitgenommen werden kann, zum Beispiel in Form einer PC-Karte, so wird hierdurch die Sicherheit beim Betrieb der zwei Betriebssysteme erhöht, da ein Angriff auf die Virtualisierungseinheit erheblich erschwert wird.
  • In einer vorzugsweisen Erweiterung werden vor dem Ausführen des Bootloaders der Virtualisierungseinheit eine Integrität des Bootloaders durch die Sicherheitseinheit überprüft und der Bootloader nur nach positiver Überprüfung der jeweiligen Integrität ausgeführt. Durch diese Erweiterung wird verhindert, dass ein manipulierter Bootloader benutzt wird. Somit wird durch Überprüfen der jeweiligen Integrität und durch das Ausführen des Bootloaders nur nach positiver Überprüfung der jeweiligen Integrität eine zusätzliche Steigerung der Sicherheit beim Betrieb erreicht.
  • Vorzugsweise wird eine Virtualisierungssoftware der Virtualisierungseinheit in der Sicherheitseinheit abgelegt und von dort ausgeführt. Durch diese Erweiterung wird erreicht, dass ein Manipulationsversuch der Virtualisierungseinheit in der Sicherheitseinheit durchgeführt werden müsste. Ist beispielsweise die Sicherheitseinheit in Hardware ausgeführt oder für einen Angreifer schwer zugänglich, weil die Sicherheitseinheit durch einen Benutzer mitgenommen werden kann, zum Beispiel in Form einer PC-Karte, so wird hierdurch die Sicherheit beim Betrieb der zwei Betriebssysteme erhöht, da ein Angriff auf die Virtualisierungseinheit erheblich erschwert wird.
  • In einer alternativen Ausführungsform werden eine Virtualisierungssoftware der Virtualisierungseinheit in der gemeinsamen Hardware verschlüsselt abgelegt, und durch die Sicherheitseinheit ein Zugriff zum Ausführen der Virtualisierungssoftware auf die gemeinsame Hardware durch Ent- und Verschlüsseln von der Virtualisierungssoftware relevanten Daten nur mit Hilfe eines Schlüssels durchgeführt. Die hierbei relevanten Daten können Konfigurationsparameter oder ausführbarer Code, wie z.B. eine DLL (DLL-Dynamic Link Library), sein. Hiermit wird eine kostengünstige und zugleich sichere Realisierung zur Speicherung der Virtualisierungssoftware erreicht, da diese auf der kostengünstigen gemeinsamen Hardware, z.B. auf der Festplatte, organisiert abgelegt werden kann. Hierdurch kann auch eine preiswerte Sicherheitseinheit realisiert werden, da diese keinen umfangreichen Speicher zum Ablegen der Virtualisierungssoftware aufweisen muss.
  • In einer vorzugsweisen Erweiterung werden vor dem Ausführen des der Virtualisierungssoftware der Virtualisierungseinheit eine Integrität der Virtualisierungssoftware durch die Sicherheitseinheit überprüft und die Virtualisierungssoftware nur nach positiver Überprüfung der jeweiligen Integrität ausgeführt. Durch diese Erweiterung wird verhindert, dass eine manipulierte Virtualisierungssoftware benutzt wird. Somit kann durch Überprüfen der jeweiligen Integrität und durch das Ausführen der Virtualisierungssoftware nur nach positiver Überprüfung der jeweiligen Integrität eine zusätzliche Steigerung der Sicherheit beim Betrieb ermöglicht werden.
  • Ferner wird in einer weiteren Ausführungsform ein Ausgang der Integritätsprüfung einem Benutzer mittels einer Anzeige- und/oder akustischen Vorrichtung der Sicherheitseinheit mitgeteilt. Hierdurch kann die Sicherheitseinheit für verschiedene Endgeräte verwendet werden, da der Ausgang der Integritätsprüfung dem Benutzer unabhängig vom Endgerät mitgeteilt wird. Ferner wird hierdurch die Sicherheit des Verfahren weiter erhöht, da zum Mitteilen des Ausgangs das Endgerät nicht gestartet werden muss, und somit möglicherweise manipulierte Daten, wie bspw. ausführbarer Programmcode, des Endgeräts nicht aktiviert werden.
  • Die Erfindung betrifft ferner eine Sicherheitseinheit zum sicheren Betrieb von zumindest zwei Betriebssystemen auf einer gemeinsamen Hardware, wobei eine Virtualisierungseinheit einen Zugriff zwischen den Betriebssystemen und der gemeinsamen Hardware kontrolliert, wobei die Sicherheitseinheit über folgende Einheiten verfügt:
    • – eine Integritätseinheit zum Überprüfen einer Integrität eines Bootloaders und/oder einer Virtualisierungssoftware der Virtualisierungseinheit;
    • – eine Verschlüsselungseinheit zum Verschlüsseln von den jeweiligen Betriebssystemen zugeordneten Daten beim Ablegen auf der gemeinsamen Hardware mit einem dem jeweiligen Betriebssystem zugeordneten Zugriffsschlüssel;
    • – eine Entschlüsselungseinheit zum Entschlüsseln von verschlüsselten Daten bei einem Zugriff eines der jeweiligen Betriebssysteme auf die gemeinsame Hardware mit dem dem jeweiligen Betriebssystem zugeordneten Zugriffsschlüssel.
  • Die Sicherheitseinheit ermöglicht einen sicheren Betrieb von zumindest zwei Betriebssystemen auf der gemeinsamen Hardware, da die Integrität der Virtualisierungseinheit gewährleistet wird und der Zugriff auf Daten der jeweiligen Betriebssysteme nur dem berechtigten Betriebssystem ermöglicht wird.
  • Vorzugsweise ist die Sicherheitseinheit derart ausgestaltet, dass mittels einer Leseeinheit die Zugangsschlüssel und/oder ein Schlüssel der Virtualisierungseinheit zum Ent- und/oder Verschlüsseln von der Virtualisierungssoftware relevanten Daten von einer von der gemeinsamen Hardware und optional von der Sicherheitseinheit trennbaren Speichereinheit lesbar ist. Durch die Trennung der Schlüssel von der Sicherheitseinheit und/oder der gemeinsamen Hardware wird gewährleistet, dass ein Benutzer die trennbare Speichereinheit mit den Schlüsseln mitnehmen kann, so dass eine Manipulation der Schlüssel verhindert werden kann. Hierdurch wird die Sicherheit zusätzlich erhöht.
  • In einer Erweiterung verfügt die Sicherheitseinheit über eine Speichereinheit, auf der ein Bootloader der Virtualisierungseinheit und/oder eine Virtualisierungssoftware der Virtualisierungseinheit ablegbar und von dort ausführbar ist. Diese Erweiterung ermöglicht, dass sowohl die Virtualisierungssoftware als auch die Einheiten zum Nachweis der Integrität und der End- und Verschlüsselungsfunktionen in der Sicherheitseinheit gemeinsam integriert sind. Hierdurch kann eine kompakte Implementierung, beispielsweise in Form einer PC-Karte, erzielt werden. Ferner kann die Sicherheitseinheit in einem schwer zu öffnenden Gehäuse integriert sein, wodurch ein Angriff auf die in der Sicherheitseinheit umfassenden Virtuali sierungssoftware und Integritäts- sowie Entschlüsselungs- und Verschlüsselungseinheiten erschwert werden.
  • Vorzugsweise umfasst die Sicherheitseinheit eine Anzeige- und/oder akustischen Vorrichtung zum Mitteilen eines Ausgangs der Integritätsprüfung. Hiermit die Sicherheit des Verfahren weiter erhöht, da zum Mitteilen des Ausgangs das Endgerät nicht gestartet werden muss, und somit möglicherweise manipulierte Daten, wie bspw. ausführbarer Programmcode, des Endgeräts nicht aktiviert werden.
  • Schließlich betrifft die Erfindung auch eine Verwendung einer Sicherheitseinheit, wobei die Sicherheitseinheit gemäß den obigen Ausführungen ausgestaltet ist und die Sicherheitseinheit in einem Rechnersystem, zum Beispiel Laptop oder PC, verwendet wird, bei dem zumindest zwei Betriebssysteme auf einer gemeinsamen Hardware betrieben werden, wobei eine Virtualisierungseinheit einen Zugriff zwischen den Betriebssystemen und der gemeinsamen Hardware kontrolliert.
  • Die Erfindung und ihre Weiterbildungen werden nachfolgenden anhand von Zeichnungen näher erläutert.
  • Es zeigen:
  • 1 einen Aufbau einer Hardwareschicht und einer Softwareschicht, wobei zwischen den Betriebssystemen und der Hardwareschicht eine Virtualisierungsschicht zur Abstraktion der Hardwareschicht eingefügt ist;
  • 2 einen Aufbau mit einer Hardwareschicht und einer Softwareschicht, wobei eine Sicherheitseinheit sicherheitsrelevante Zugriffe steuert;
  • 3 einen Aufbau der Sicherheitseinheit.
  • Elemente mit gleicher Funktion und Wirkungsweise sind in den 1 bis 3 mit denselben Bezugszeichen versehen.
  • 1 zeigt einen Aufbau bestehend aus einer Hardwareschicht HWS und einer Softwareschicht SWS. Dieser Aufbau ist beispielsweise in einem handelsüblichen PC oder Laptop implementier- und realisierbar. Dabei umfasst die Hardwareschicht gemeinsam verwendete Hardware BHW, wie eine gemeinsamen Festplatte FP, eine Grafikkarte GFA zum Ausgeben von visuellen Informationen und/oder eine Netzwerkkarte LAN zum Senden/Empfangen von Datenpaketen. Wie in 1 ersichtlich, wird diese gemeinsame Hardware von zwei Betriebssystemen OS1, OS2 benutzt. Eine Virtualisierungseinheit VS, die sich logisch zwischen den Betriebssystemen und der Hardwareschicht befindet, hat folgende Aufgaben:
    • – Emulation der Schnittstellen der Hardwareschicht;
    • – Steuerung von Zugriffen der Betriebssysteme auf die Hardwareschicht und Steuerung von Zugriffen der Hardwareschicht auf die Betriebssysteme;
    • – Virtuelle Container, in denen jeweils ein Betriebssystem ausgeführt werden kann.
  • Einem Fachmann sind, wie in der Einleitung näher ausgeführt, verschiedene Produkte/Verfahren, wie zum Beispiel VM-Ware, XEN, Twinsafe oder Virtual Desktop bekannt, mit denen die Virtualisierungseinheit gemäß 1 realisierbar ist.
  • Anhand von 2 wird ein Ausführungsbeispiel der Erfindung näher dargestellt. Dabei möchte ein Geschäftsführer auf seinem Laptop zum Einen vertrauliche Dokumente der Firma verwalten und bearbeiten, und zum Anderen seine privaten E-Mails abrufen. Der Laptop verfügt unter Anderem über eine Festplatte und einen PC-Card-Einschub.
  • Die Festplatte FP des Laptops wird in zwei Partitionen P1, P2 aufgeteilt. In der ersten Partition P1 liegen mit einem ersten Zugriffsschlüssel K01 entschlüsselbare Daten eines ersten Betriebssystems OS1. Auf der zweiten Partition sind die Daten eines zweiten Betriebssystems OS2 verschlüsselt abgelegt, wobei die verschlüsselten Daten mit Hilfe eines zweiten Zugriffsschlüssels KO2 entschlüsselbar sind. In dem PC-Card-Einschub befindet sich eine PC-Karte, die eine Sicherheitseinheit SH umfasst. Zum Start seines Laptops schiebt der Benutzer zunächst seine Schlüsselkarte C in die Sicherheitseinheit ein, die mit Hilfe einer Leseeinheit LE in der Lage ist, einen oder mehrere Schlüssel, wie zum Beispiel den ersten Zugriffsschlüssel KO1, von der Schlüsselkarte zu lesen. Ein funktioneller Aufbau der Sicherheitseinheit SH ist in 3 abgedruckt, wobei die Sicherheitseinheit in Form einer PC-Karte ausgeformt ist. Die Schlüsselkarte repräsentiert in diesem Ausführungsbeispiel eine trennbare Speichereinheit, z.B. eine MMC-Karte (MMC – MultiMedia Card).
  • Zunächst liest die Leseeinheit LE einen Schlüssel KVS der Virtualisierungseinheit ein. Im folgenden Schritt werden ein Bootloader VSB und eine Virtualisierungssoftware VSS der Virtualisierungseinheit mit Hilfe des Schlüssels KVS der Virtualisierungseinheit VS auf Integrität geprüft. Dies wird in einer Integritätseinheit IE durchgeführt. Ist die Prüfung negativ, das heißt die Integrität des Bootloaders VSB und/oder der Virtualisierungssoftware VSS ist nicht gegeben, so kann davon ausgegangen werden, dass der Bootloader und/oder die Virtualisierungssoftware manipuliert worden sind. In diesem Fall kann der Benutzer mittels Ausgabe am Display des Laptops über die Manipulation hingewiesen werden, und der Laptop startet bspw. nicht mit dem Bootvorgang.
  • Falls die Prüfung positiv ist, das heißt die Integrität des Bootloaders VSB und der Virtualisierungssoftware VSS der Virtualisierungseinheit VS, d.h. VSB(VS), VSS(VS), gegeben ist, startet der Bootvorgang des Laptops. Dabei wird zunächst der Bootloader VSB gestartet und anschließend die Virtualisie rungssoftware VSS aktiviert. Werden im folgenden Verlauf eine oder mehrere Funktionen der Virtualisierungssoftware aufgerufen, so greift ein Prozessor des Laptops zur Ausführung der Funktionen auf die Virtualisierungssoftware VSS zu. Der Bootloader und die Virtualisierungssoftware sind in einer Speichereinheit SE in der Sicherungseinheit SH abgelegt.
  • Im Folgenden wird der erste Zugriffsschlüssel K01 durch die Leseeinheit LE von der Schlüsselkarte gelesen und einer Verschlüsselungseinheit VE und einer Entschlüsselungseinheit EE, die sich jeweils in der Sicherungseinheit befinden, zugeführt. Anschließend wird ein Bootloader des ersten Betriebssystems OS1 von der ersten Partition P1 der Festplatte FP gestartet. Dabei werden verschlüsselte erste Daten D1' von der ersten Partition gelesen, der Entschlüsselungseinheit EE zugeführt, welche mittels des ersten Zugriffsschlüssels K01 aus den ersten verschlüsselten Daten erste Daten D1 generiert, die dem Prozessor zur weiteren Verarbeitung des ersten Betriebssystems OS1 zur Verfügung gestellt werden. Analog wird zur Speicherung von ersten Daten in der ersten Partition der Festplatte derart vorgegangen, dass die ersten Daten der Verschlüsselungseinheit VE zugewiesen werden, die die ersten Daten mit Hilfe des ersten Zugriffsschlüssels verschlüsselt in erste verschlüsselte Daten D1' und diese in verschlüsselter Form auf der ersten Partition ablegt.
  • Zum Starten des zweiten Betriebssystems OS2 wird analog zum Starten des ersten Betriebssystems OS1 vorgegangen, wobei jedoch an Stelle des ersten Zugriffsschlüssels KO1 zweite Daten D2 mit Hilfe eines zweiten Zugriffsschlüssels KO2 in verschlüsselte zweite Daten D2' bzw. aus den verschlüsselten zweiten Daten D2' durch Entschlüsselung die zweiten Daten D2 verschlüsselt/entschlüsselt werden.
  • Zur zusätzlichen Steigerung der Sicherheit des Laptops wird, durch den Benutzer, eines der beiden Betriebssysteme OS1, OS2 als aktives Betriebssystem festgelegt. Diese Festlegung hat zur Folge, dass der Sicherheitseinheit SH mitgeteilt wird, welches der Betriebssysteme im Folgenden aktiv ist, so dass durch die Sicherheitseinheit nur der Zugriffsschlüssel des aktiven Betriebssystems zum Entschlüsseln und/oder Verschlüsseln von Daten des aktiven Betriebssystems zur Verfügung gestellt wird. Die Daten der nicht aktiven Betriebssysteme sind in dieser Erweiterung weder lesbar noch entschlüsselbar.
  • Ferner kann die Virtualisierungssoftware VSS an Stelle auf der Schlüsselkarte im Laptop sicher abgelegt sein. Dazu umfasst die Festplatte FP des Laptops eine dritte Partition (nicht gezeichnet), welche die Virtualisierungssoftware in verschlüsselter Form umfasst. Zum Ausführen der Virtualisierungssoftware werden dazugehörige Daten von der dritten Position gelesen, durch die Entschlüsselungseinheit EE der Sicherheitseinheit SH entschlüsselt und der Virtualisierungseinheit, das heißt dem Prozessor, der die Virtualisierungseinheit ausführt, zur Verfügung gestellt. Zum Ablegen von den zu der Virtualisierungssoftware dazugehörigen Daten werden diese der Verschlüsselungseinheit VE der Sicherheitseinheit SH zugeführt, mit dem Schlüssel der Virtualisierungseinheit verschlüsselt und die verschlüsselten Daten in der dritten Partition abgelegt. Analog zur Überprüfung der Integrität im Falle, dass die Virtualisierungssoftware auf der Schlüsselkarte abgelegt ist, wird die Virtualisierungssoftware auf der dritten Partition nach Überprüfen des Bootloaders verschlüsselt oder unverschlüsselt durch die Integritätseinheit IE auf Integrität überprüft. Ist die Prüfung des Bootloaders und der Virtualisierungssoftware auf Integrität positiv bzw. negativ, so wird, wie bereits beschrieben, analog fortgefahren.
  • In einer weiteren Ausführungsform sind die Einheiten der Sicherheitseinheit SH, das heißt die Verschlüsselungseinheit VE, die Entschlüsselungseinheit EE, die Leseeinheit LE und die Integritätseinheit IE in Hardware ausgeführt, so dass eine Möglichkeit einer Manipulation der Sicherheitseinheit SH nahezu ausgeschlossen ist.
  • Zur Erhöhung der Sicherheit können in einem weiteren Ausführungsbeispiel die Schlüsselkarte und die Sicherheitseinheit in einer weiteren Sicherheitseinheit integriert sein. Vorzugsweise wird die weitere Sicherheitseinheit in einer PC-Karte oder einem USB-Stick untergebracht. Durch Mitnahme der PC-Karte oder des USB-Sticks wird gewährleistet, dass ein Angreifer keinen Zugriff auf die Zugriffsschlüssel bzw. den Schlüssel der Virtualisierungsschicht erhält und somit auch die Funktionen der Sicherheitseinheit nur schwer manipulierbar sind.
  • In einer alternativen Weiterbildung zur Mitteilung eines Benutzers über den Ausgang der Integritätsprüfung kann anstelle einer Ausgabe auf dem Display des Laptops eine Anzeige- und/oder akustische Vorrichtung HI Bestandteil der Sicherheitseinheit sein, wie den Benutzer mittels einer LED (LED – Light Emitting Device) und/oder mittels eines an einem Lautsprecher der Vorrichtung HI ausgegeben Hinweistons über den positiven und/oder negativen Ausgang der Integritätsprüfung informiert.
  • Durch Verwendung des in den 2 und 3 erläuterten Aufbaus ist der Benutzer in der Lage, durch das erste Betriebssystem vertrauliche Daten zu bearbeiten und zu speichern. Dabei kann der Benutzer davon ausgehen, dass diese weder durch das erste Betriebssystem OS1 selbst noch durch eines der weiteren Betriebssysteme OS2, die auf dem Laptop installiert sind, ausspioniert werden können. Zum Verarbeiten nicht vertraulicher Daten, wie zum Beispiel zum Lesen privater E-Mails oder zum Surfen auf beliebigen Seiten im Internet, schaltet der Benutzer den Betrieb des Laptops von dem ersten Betriebssystem OS1 auf das zweite Betriebssystem OS2 um. Da die Daten, die zu dem ersten und dem zweiten Betriebssystem gehören, getrennt voneinander bearbeitet und gespeichert werden, kann der Benutzer davon ausgehen, dass auch schadhafte Programme, wie zum Beispiel Viren, Würmer und Trojaner keinen Zugriff auf vertrauliche Daten des ersten Betriebssystems erhalten. Ferner wird gewährleistet, dass auf Grund der strik ten Trennung der Daten des ersten und zweiten Betriebssystems schadhafte Software/Programme des zweiten Betriebssystems nicht in das erste Betriebssystem eindringen können.

Claims (16)

  1. Verfahren zum sicheren Betrieb von zumindest zwei Betriebssystemen (OS1, OS2) auf einer gemeinsamen Hardware (BHW), wobei eine Virtualisierungseinheit (VS) einen Zugriff zwischen den Betriebssystemen (OS1, OS2) und der gemeinsamen Hardware (BHW) kontrolliert, dadurch gekennzeichnet, dass mit Hilfe einer Sicherheitseinheit (SH) eine Integrität der Virtualisierungseinheit (VS) gewährleistet wird, und durch die Sicherheitseinheit (SH) ein Zugriff auf Daten (D1) bei einem Ausführen eines der beiden Betriebssysteme (OS1) derart durchgeführt wird, dass das ausführende Betriebssystem (OS1) nur Zugriff auf die ihm zugeordneten Daten (D1) hat.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die den jeweiligen Betriebssystemen (OS1, OS2) zugeordneten Daten (D1, D2) jeweils verschlüsselt als verschlüsselte Daten (D1', D2') in der gemeinsamen Hardware (BHW) abgelegt werden, und ein jeweiliger Zugriff auf die verschlüsselten Daten (D1', D2') mit Hilfe von jeweils einem jedem Betriebssystem (OS1, OS2) zugeordneten Zugriffsschlüssel (KO1, KO2) durchgeführt wird.
  3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass die Zugangsschlüssel (KO1, KO2) auf einer von der gemeinsamen Hardware (BHW) und der Sicherheitseinheit (SH) trennbaren Speichereinheit (C) abgelegt wird, und durch die Sicherheitseinheit (SH) zum Ent- und Verschlüsseln die Zugangsschlüssel (KO1, KO2) (KVS) von Daten von der trennbaren Speichereinheit (C) gelesen werden.
  4. Verfahren nach Anspruch 2 oder 3, dadurch gekennzeichnet, dass der Sicherheitseinheit (SH) mitgeteilt wird, welches der Betriebssysteme (OS1, OS2) im Folgenden aktiv ist, und durch die Sicherheitseinheit (SH) aus einer Menge an Zugriffsschlüsseln (KO1, KO2) der Betriebssysteme (OS1, OS2) nur der Zugriffsschlüssel (KO2) des aktiven Betriebssystems (OS2) für ein Entschlüsseln und/oder Verschlüsseln zur Verfügung gestellt wird.
  5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass ein Bootloader (VSB) zum Starten der Virtualisierungseinheit (VS) in der Sicherheitseinheit (SH) abgelegt und von dort ausgeführt wird.
  6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, dass vor dem Ausführen des Bootloaders (VSB) der Virtualisierungseinheit (VS) eine Integrität des Bootloaders (VSB) durch die Sicherheitseinheit (SH) überprüft wird, und der Bootloader (BSB) nur nach positiver Prüfung der jeweiligen Integrität ausgeführt wird.
  7. Verfahren nach einem der Ansprüche 5 oder 6, dadurch gekennzeichnet, dass eine Virtualisierungssoftware (VSS) der Virtualisierungseinheit (VS) in der Sicherheitseinheit (SH) abgelegt und von dort ausgeführt wird.
  8. Verfahren nach einem der Ansprüche 5 oder 6, dadurch gekennzeichnet, dass eine Virtualisierungssoftware (VSS) der Virtualisierungseinheit (VS) in der gemeinsamen Hardware (BHW) verschlüsselt abgelegt wird, und durch die Sicherheitseinheit (SH) ein Zugriff zum Ausführen der Virtualisierungssoftware (VSS) auf die gemeinsame Hardware (BHW) durch Ent- und Verschlüsseln von der Virtualisierungssoftware (VSS) relevanten Daten nur mit Hilfe eines Schlüssels (KVS) durchgeführt wird.
  9. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass der Schlüssel (KVS) auf einer von der gemeinsamen Hardware (BHW) und der Sicherheitseinheit (SH) trennbaren Speichereinheit (C) abgelegt wird, und durch die Sicherheitseinheit (SH) zum Ent- und Verschlüsseln der Schlüssel (KVS) von der trennbaren Speichereinheit (C) gelesen werden.
  10. Verfahren nach einem der Ansprüche 7 bis 9, dadurch gekennzeichnet, dass vor dem Ausführen der Virtualisierungssoftware (VSS) der Virtualisierungseinheit (VS) eine Integrität der Virtualisierungssoftware (VSS) durch die Sicherheitseinheit (SH) überprüft wird, und die Virtualisierungssoftware (VSS) nur nach positiver Prüfung der jeweiligen Integrität ausgeführt wird.
  11. Verfahren nach Anspruch 6 oder 10, dadurch gekennzeichnet, dass ein Ausgang der Integritätsprüfung einem Benutzer mittels einer Anzeige- und/oder akustischen Vorrichtung (HI) der Sicherheitseinheit (SH) mitgeteilt wird.
  12. Sicherheitseinheit (SH) zum sicheren Betrieb von zumindest zwei Betriebssystemen (OS1, OS2) auf einer gemeinsamen Hardware (BHW), wobei eine Virtualisierungseinheit (VS) einen Zugriff zwischen den Betriebssystemen (OS1, OS2) und der gemeinsamen Hardware (BHW) kontrolliert, dadurch gekennzeichnet, dass die Sicherheitseinheit über folgende Einheiten verfügt: – eine Integritätseinheit (IE) zum Überprüfen einer Integrität eines Bootloaders (VSB) der Virtualisierungseinheit (VS) und/oder einer Virtualisierungssoftware (VSS) der Virtualisierungseinheit (VS); – eine Verschlüsselungseinheit (VE) zum Verschlüsseln von den jeweiligen Betriebssystemen (OS1, OS2) zugeordneten Daten (D1, D2) beim Ablegen auf der gemeinsamen Hardware (BHW) mit einem dem jeweiligen Betriebssystem zugeordneten Zugriffsschlüssel (KO1, KO2); – eine Entschlüsselungseinheit (EE) zum Entschlüsseln von verschlüsselten Daten (D1', D2') bei einem Zugriff eines der jeweiligen Betriebssysteme (OS1, OS2) auf die gemeinsame Hardware (BHW) mit dem dem jeweiligen Betriebssystem zugeordneten Zugriffsschlüssel (KO1, KO2).
  13. Sicherheitseinheit (SH) nach Anspruch 12, dadurch gekennzeichnet, dass die Sicherheitseinheit derart ausgestaltet ist, dass mittels einer Leseeinheit (LE) die Zugangsschlüssel (KO1, KO2) und/oder ein Schlüssel (KVS) der Virtualisierungseinheit (VS) zum Ent- und/oder Verschlüsseln von der Virtualisierungssoftware relevanten Daten von einer von der gemeinsamen Hardware und optional von der Sicherheitseinheit trennbaren Speichereinheit (C) lesbar ist.
  14. Sicherheitseinheit (SH) nach Anspruch 12 oder 3, dadurch gekennzeichnet, dass die Sicherheitseinheit über eine Speichereinheit (SE) verfügt, auf der der Bootloader (VSB) und/oder die Virtualisierungssoftware (VSS) ablegbar und von dort ausführbar ist.
  15. Sicherheitseinheit (SH) nach einem der Ansprüche 12 bis 14, dadurch gekennzeichnet, dass die Sicherheitseinheit (SH) eine Anzeige- und/oder akustischen Vorrichtung (HI) zum Mitteilen eines Ausgangs der Integritätsprüfung umfasst.
  16. Verwendung einer Sicherheitseinheit (SH), dadurch gekennzeichnet, dass die Sicherheitseinheit gemäß einem der Ansprüche 12 bis 15 ausgestaltet ist, und die Sicherheitseinheit in einem Rechnersystem (RSYS) verwendet wird, bei dem zumindest zwei Betriebssysteme (OS1, OS2) auf einer gemeinsamen Hardware (BHW) betrieben sicher werden, wobei eine Virtualisierungseinheit (VS) einen Zugriff zwischen den Betriebssystemen (OS1, OS2) und der gemeinsamen Hardware (BHW) kontrolliert.
DE102006044005A 2006-09-19 2006-09-19 Verfahren, Sicherheitseinheit und Verwendung der Sicherheitseinheit zum sicheren Betrieb von zumindest zwei Betriebssystemen auf einer gemeinsamen Hardware Ceased DE102006044005A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102006044005A DE102006044005A1 (de) 2006-09-19 2006-09-19 Verfahren, Sicherheitseinheit und Verwendung der Sicherheitseinheit zum sicheren Betrieb von zumindest zwei Betriebssystemen auf einer gemeinsamen Hardware

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102006044005A DE102006044005A1 (de) 2006-09-19 2006-09-19 Verfahren, Sicherheitseinheit und Verwendung der Sicherheitseinheit zum sicheren Betrieb von zumindest zwei Betriebssystemen auf einer gemeinsamen Hardware

Publications (1)

Publication Number Publication Date
DE102006044005A1 true DE102006044005A1 (de) 2008-03-27

Family

ID=39104935

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102006044005A Ceased DE102006044005A1 (de) 2006-09-19 2006-09-19 Verfahren, Sicherheitseinheit und Verwendung der Sicherheitseinheit zum sicheren Betrieb von zumindest zwei Betriebssystemen auf einer gemeinsamen Hardware

Country Status (1)

Country Link
DE (1) DE102006044005A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009144602A1 (en) * 2008-05-30 2009-12-03 International Business Machines Corporation Protection and security provisioning using on-the-fly virtualization

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050138370A1 (en) * 2003-12-23 2005-06-23 Goud Gundrala D. Method and system to support a trusted set of operational environments using emulated trusted hardware

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050138370A1 (en) * 2003-12-23 2005-06-23 Goud Gundrala D. Method and system to support a trusted set of operational environments using emulated trusted hardware

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009144602A1 (en) * 2008-05-30 2009-12-03 International Business Machines Corporation Protection and security provisioning using on-the-fly virtualization

Similar Documents

Publication Publication Date Title
DE112005003340B4 (de) Mechanismus zum Bestimmen der Vertrauenswürdigkeit von Außerbandverwaltungsagenten
US9934407B2 (en) Apparatus for and method of preventing unsecured data access
DE102008011925B4 (de) Sicheres Initialisieren von Computersystemen
DE112015004555B4 (de) Verarbeiten eines Gast-Ereignisses in einem von einem Hypervisor gesteuerten System
DE102004062203B4 (de) Datenverarbeitungseinrichtung, Telekommunikations-Endgerät und Verfahren zur Datenverarbeitung mittels einer Datenverarbeitungseinrichtung
US7506170B2 (en) Method for secure access to multiple secure networks
US7725737B2 (en) System and methodology providing secure workspace environment
DE10196006B4 (de) Erzeugen einer Schlüsselhierarchie zur Verwendung in einer isolierten Ausführungsumgebung
DE69815599T2 (de) Verfahren und Vorrichtung zum Schutz von Anwendungsdaten in sicheren Speicherbereichen
Zhioua The middle east under malware attack dissecting cyber weapons
CN108595982B (zh) 一种基于多容器分离处理的安全计算架构方法及装置
US20100095131A1 (en) Method and system for seamless integration of preprocessing and postprocessing functions with an existing application program
CN109918919A (zh) 认证变量的管理
DE112009002502T5 (de) Multilayer inhalte-schützender Mikrocontoller
US20040230806A1 (en) Digital content control including digital rights management (DRM) through dynamic instrumentation
DE102013108394A1 (de) Verfahren zum Verwalten eines Schlüssels für sicheres Speichern von Daten und Vorrichtung dafür
JP2016523421A (ja) ハイパーバイザに制御されるシステムにおいてゲスト・イベントを処理するための方法、データ処理プログラム、コンピュータ・プログラム製品、およびデータ処理システム
US7966465B2 (en) Method and system for secure code encryption for PC-slave devices
JPS63124151A (ja) 論理的に安全なプロセツサ・システム
US20090182860A1 (en) Method and system for securely sharing content
CN103763313A (zh) 一种文档保护方法和系统
DE112014000337T5 (de) Sichere Ausführung von Software-Modulen auf einem Computer
EP2082350B1 (de) Verfahren und sendevorrichtung zum gesicherten erstellen und versenden einer elektronischen nachricht sowie verfahren und empfangsvorrichtung zum gesicherten empfangen und verarbeiten einer elektronischen nachricht
US20180026986A1 (en) Data loss prevention system and data loss prevention method
US9881142B2 (en) Method and apparatus for preventing and investigating software piracy

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final

Effective date: 20121123