Gehärtetes Betriebssystem

Sicherheit des Betriebssystems unabhängig von der Hardwareplattform und der Verwendungsbereichen

Gehärtetes Betriebssystem: System Sicherheit

Gehärtetes Betriebssystem – Datensicherheit und Systems Security

Die Landschaft aktueller IoT-Geräte ist sehr heterogen und viele der Geräte sind unzureichend abgesichert. Ein Hauptgrund für diesen Zustand ist die Nichtverfügbarkeit einer sicheren Plattform für verschiedene Klassen von Geräten da der hohe Realisierungsaufwand von den einzelnen Marktteilnehmern oft nicht effizient gestemmt werden kann. 

In dem vorliegenden Projekt „Gehärtetes Betriebssystem“ des Fraunhofer AISEC und der TU München sollen bestehende und neue Sicherheitstechnologien und -konzepte erforscht und evaluiert und zu einem gehärteten System integriert werden. Der Fokus liegt dabei auf der Sicherheit (Security) des Betriebssystems, der darauf laufenden Dienste und der Kommunikation zwischen den Systemen. Die Entwicklungen sollen – soweit möglich – unabhängig von der verwendeten Hardwareplattform erfolgen und in unterschiedlichen Domänen einsetzbar sein, wie z.B. Automotive und Avionik, in Mobile Edge-Devices, Industrie-Gateways oder in eingebetteten Geräten, sowie beim Thema IoT.

In diesen Domänen ist eine starke Trennung und Isolation von Systemkomponenten unterschiedlicher Sicherheitslevels essentiell für die Gesamtsicherheit der Plattform. Darum werden Mechanismen und Technologien zur starken Isolation einzelner Komponenten erforscht und evaluiert. Hierbei sollen sowohl Software basierte als auch in der Hardware verankerte Ansätze, z.B. Hardware-Virtualisierung, Trusted Execution Environments (TEEs) oder dedizierte Sicherheitskoprozessoren, betrachtet werden.

Zur Verbesserung der Sicherheit innerhalb der einzelnen Systemkomponenten sollen in diesem Projekt Compiler basierte Sicherheitsmechanismen erforscht werden, die die Resistenz gegen Speicherfehler erhöhen. Für die Programmierung systemnaher Komponenten kommen fast ausschließlich unsichere Programmiersprachen wie C und C++ zum Einsatz. Die fehlende Speicher- und Typsicherheit dieser Sprachen führt zu schwerwiegenden Verwundbarkeiten, die von Angreifern dazu genutzt werden können, Systemkomponenten zu übernehmen oder Zugang zu vertraulichen Informationen zu gewinnen. 

Neben der Erforschung Software basierter Lösungen für Speichersicherheit (Memory Safety) evaluiert das Projekt auch verwendbare Hardwareerweiterungen verschiedener Prozessorarchitekturen. Darüber hinaus untersucht es die Verwendung von modernen, speichersicheren Programmiersprachen, wie z.B. Rust, als Alternative und Ergänzung für betriebssystemnahe Programmierung. Des Weiteren erforscht das Projekt Technologien und Ansätze zum automatisierten Auffinden von Programmierfehlern.

Das Fraunhofer-Institut für Angewandte und Integrierte Sicherheit AISEC hat in einer Vielzahl von Projekten eine gehärtete Linux-basierte Container-Lösung für IoT-Geräte entwickelt und Ergebnisse für unterschiedliche Anwendungsdomänen auf Konferenzen vorgestellt und veröffentlicht [1, 2]. Zudem gibt es Vorarbeiten im Bereich Integritätsschutz von Mikrokernel basierten Systemen [3], sowie Veröffentlichungen von Angriffen auf derartige Systeme und den entsprechenden Schutzmaßnahmen [4].

Referenzen

[1] Manuel Huber, Julian Horsch, Michael Velten, Michael Weiss, and Sascha Wessel. “A Secure Architecture for Operating System-Level Virtualization on Mobile Devices”. In: Revised Selected Papers of the 11th International Conference on Information Security and Cryptology;

[2] Manuel Huber, Gerd S. Brost, Julian Schütte, Michael Weiß, Mykolai Protsenko, and Sascha Wessel. “An Ecosystem and IoT Device Architecture for Building Trust in the Industrial Data Space”. In: CPSS’18: The 4th ACM Cyber-Physical System Security Workshop;

[3] Michael Weiss, Steffen Wagner, Roland Hellman, and Sascha Wessel. “Integrity Verification and Secure Loading of Remote Binaries for Microkernel-Based Runtime Environments”. In: Trust, Security and Privacy in Computing and Communications (TrustCom);

[4] Michael Weiß, Benjamin Weggenmann, Moritz August, and Georg Sigl. “On Cache Timing Attacks Considering Multi-Core Aspects in Virtualized Embedded Systems”. In: The 6th International Conference on Trustworthy Systems (InTrust 2014).

Gehärtetes Betriebssystem: Gewährleistung der Sicherheit

Zusammenspiel der Hardware- und Softwarekomponenten und deren Sicherheit

Modularisierung von Hardware- und Softwarekomponenten

um Auswirkung von Fehlern in einzelnen Komponenten zu begrenzen

Isolation von Komponenten unterschiedlicher Sicherheitslevels für bessere Resistenz gegen Angriffe

Compiler basierte Technologien

zur Erhöhung der Sicherheit von unsicheren Programmiersprachen gegen Speicherfehler

Tooling zum automatisierten Auffinden von Programmierfehlern

Speichersichere Programmiersprachen

als Alternative im Bereich systemnaher Programmierung