Secure Operating Systems

Sicherheit für Betriebssysteme und hardwarenahe Software

Der Forschungsbereich Secure Operating Systems des Fraunhofer AISEC beschäftigt sich mit Themen rund um die Sicherheit von hardwarenaher Software.

Ein Forschungsschwerpunkt der Abteilung betrifft alle Facetten der Sicherheit von Betriebssystemen. Insbesondere für Linux-basierte Systeme analysieren und entwickeln die Wissenschaftlerinnen und Wissenschaftler des Forschungsbereichs sichere Softwarearchitekturen und Techniken zum Schutz der Systemintegrität, Resilienz und zur Isolation von kritischen Komponenten und Daten. Dabei kommen u.a. Betriebssystemcontainer, Virtualisierung, Microkernel, Trusted Execution Environments (TEEs) und sichere Koprozessoren zum Einsatz.

Ein weiterer Forschungsschwerpunkt des Bereichs ist die Sicherheit von hardwarenaher Softwareentwicklung. Auf der einen Seite erforschen die Mitarbeitenden hier Technologien, die die Sicherheit von Software in der Ausführung verbessern und diese beispielsweise resistent gegen bestimmte Angriffe machen. Auf der anderen Seite werden Methoden für automatisierte Sicherheitstests zur Verbesserung der Softwarequalität entwickelt und angewandt, insbesondere in Form von Fuzzing.

Laborräume

 

System Security Lab

Im System Security Labor werden sichere Systemlösungen für eingebettete sowie mobile Geräte sowie Server entwickelt und evaluiert.

Software Security Lab

Im Software Security Labor werden Ansätze zur Softwareanalyse und zur präventiven Härtung von Software erforscht.

Testlab für Isolationsmechanismen

In diesem Testlab wird die Software von komplexen, modularisierten Softwarestacks getestet mit dem Ziel, Isolationsmechanismen zu evaluieren sowie Bugs zu finden und zu korrigieren.

 

Testlab für IoT-Security

Im Testlabor für IoT Security wird die Software von vernetzten Geräten analysiert mit dem Ziel Bugs zu finden und zu korrigieren.

Angebote im Überblick

Unser Ziel ist es, in enger Zusammenarbeit mit unseren Kunden und Partnern die Fähigkeit zur Beurteilung der Sicherheit von Systemen und Produkten systematisch zu verbessern, um die Systemzuverlässigkeit zu bewerten, Systeme sicher zu gestalten und die Sicherheit nachhaltig über den gesamten Lebenszyklus zu bewahren.

Sicherheit bewerten

Forschung, Entwicklung und Beratung zur Bewertung der Sicherheit von Systemen

  • Risiko- und Bedrohungsanalysen als Grundlage für Architekturentscheidungen
  • Vergleich von Produkten und Technologien im Rahmen von Studien
  • Konzeptanalyse und -bewertung von
    • Soft- und Hardwarearchitekturen
    • Sicherheitskonzepten
    • Vollständigen Systemen (z.B. IoT-Geräte)
  • Praktische Analyse von Softwarekomponenten
    • Reverse Engineering
    • Statische Code-Analysen
    • Code Reviews
    • Entwicklung von Analysewerkzeugen
  • Praktische Sicherheitstests
    • Fuzz-Tests
    • Pentests
    • Entwicklung von Testwerkzeugen 

Sicherheit gestalten

Forschung, Entwicklung und Beratung zur Verbesserung der Sicherheit von Systemen

  • Unterstützung bei der Entwicklung von IT-Sicherheitsprodukten
  • Verbesserung der IT-Sicherheit von Produkten
  • Machbarkeitsstudien
  • Konzeptentwicklung
    • Systemarchitekturdesign einzelner und verteilter Systeme
    • Modularisierung von Softwarearchitekturen
    • Separierung sicherheitskritischer Komponenten mit geeigneten Isolationsmechanismen (Software und Hardware)
    • Systematische Reduzierung der Komplexität von Komponenten und Schnittstellen und somit der Trusted Computing Base (TCB)
    • Protokolldesign, z.B. Remote Attestation
    • Entwicklung von Schutz- und Gegenmaßnahmen bei Angriffen
  • Prototypentwicklung und Integration in bestehende Lösungen
    • Kernel: Linux, L4, ...
    • Distributionen: Yocto, Android, ...
    • Virtualisierung
    • Trusted Execution Environments (TEE)
    • Container
    • AMD SEV, Intel SGX, ARM TrustZone
    • Trusted Computing Technologien: TPM, DICE
    • Secure Elements
    • Compiler: LLVM

Sicherheit bewahren     

Forschung, Entwicklung und Beratung zur Bewahrung der Sicherheit von Betriebssystemen

  • Effizienzsteigerung und Kostenreduzierung in der Entwicklung, bspw. hinsichtlich Rezertifizierungen
  • Härtung von Systemen
  • Konzept- und Prototypenentwicklung
    • Sichere Software Updates
    • Security Monitoring
    • Resilienz gegen Angriffe
    • Recovery nach erfolgreichen Angriffen
    • Integritätsschutzmaßnahmen
  • Schulungen

Expertise

Der Forschungsbereich Sichere Betriebssysteme verfügt über langjährige Erfahrung im Bereich der Plattformsicherheit. Die Mitarbeitenden des Bereichs beschäftigen sich u.a. mit dem Design und der Umsetzung sicherer Prozesse für das Bootstrapping und Update moderner, insbesondere eingebetteter, Systeme. Darüber hinaus entwickeln sie sichere Architekturen, die fortschrittliche Sicherheitstechnologien wie Trusted Execution Environments (TEEs) bzw. sichere Koprozessoren einbinden. Neben der Integrität spielen auch die Vertraulichkeit und Ausfallsicherheit der untersuchten Plattformen eine entscheidende Rolle. Hier entwickelt der Forschungsbereich neue Methoden um verschiedene Zielplattformen widerstandsfähig gegen physische Angreifer im Feld zu machen.

Betriebssysteme oder Operating Systems bilden die Grundlage praktisch jedes IT-Systems. Sie dienen als Schnittstelle zwischen Hardware und Anwendungssoftware oder Apps. Durch ihre privilegierte Position kommt ihnen in Bezug auf die Sicherheit eines Systems eine besonders wichtige Rolle zu. Der Forschungsbereich Sichere Betriebssysteme beschäftigt sich mit der Sicherheit aller Arten von Betriebssystemen und kann in diesem Bereich auf langjährige Erfahrung zurückgreifen. Im Fokus der Forschung stehen insbesondere die Sicherheit und die Sicherheitsfeatures Linux-basierter Systeme. Hier arbeiten die Forscher des Bereichs an neuen Architekturen und Features. Ziel ist insbesondere die Härtung von Betriebssystemkernen gegen verschiedenste Angriffe sowie die Härtung der Gesamtsysteme.

Um Ressourcen und Kosten einzusparen, wird in vielen Bereichen dazu übergegangen, mehrere physische Systeme in ein System zu integrieren. Da die integrierten Geräte oft unterschiedliche sicherheitskritische Aufgaben erfüllen, müssen die jeweiligen funktionalen Gruppen im verbleibenden physischen System voneinander isoliert werden. Virtualisierung ist eine mögliche Technik um eine solche Isolation zu erreichen. Der Bereich Sichere Betriebssysteme kann auf langjährige Erfahrung in der Entwicklung, Evaluierung und Verbesserung von Virtualisierungstechniken zurückblicken. Insbesondere im Kontext von Linux-basierten Systemen analysieren und verbessern die Forscherinnen und Forscher verschiedene Möglichkeiten der Virtualisierung, z.B. in Form von Containern oder Kernel-based Virtual Machines (KVM), und entwickeln neue Methoden und Architekturen unter Verwendung von Virtualisierung.

Eine Vielzahl an Verwundbarkeiten von Software und daraus entstehender, teilweise massiver, Sicherheitsprobleme in modernen IT-Systemen entstehen durch die Verwendung von unsicheren Programmiersprachen. Gerade im Bereich der hardwarenahen Software, wo Geschwindigkeit und direkter Zugriff auf das System entscheidend sind, werden häufig unsichere Sprachen wie C/C++ verwendet. Der Forschungsbereich Sichere Betriebssysteme entwickelt Konzepte und Methoden, um diesen Problemen, insbesondere im Kontext der Betriebssystementwicklung, zu begegnen. Dafür analysieren die Mitarbeitenden des Bereichs bestehende Sicherheitsmechanismen und entwickeln, auch unter Einbeziehung neuartiger Hardwarefeatures, neue Mechanismen zum Schutz von hardwarenaher Software, z.B. in Form von Compiler-Erweiterungen für Control-Flow Integrity (CFI) und Memory Safety.

Die Aufgaben hardwarenaher Software, insbesondere im Betriebssystemkontext, sind oft hochkomplex. Darüber hinaus kommen in der Entwicklung häufig unsichere Programmiersprachen zum Einsatz. Dieser Umstand führt häufig zu stark fehlerbehaftetem Quellcode in der Entwicklung. Zur Abschwächung möglicher Konsequenzen sind ausführliche Sicherheitstests essentiell. Der Forschungsbereich Sichere Betriebssysteme kann auf reichhaltige Erfahrung im Bereich automatisierter Sicherheitstests für Softwarekomponenten und ganze IT-Systeme zurückgreifen und entwickelt u.a. neue Methoden für statische Code-Analyse und für dynamische Tests, insbesondere Fuzzing.

Anwendungsfelder

Die Mitarbeitenden des Forschungsbereich Sichere Betriebssysteme verfügen über langjährige Erfahrung mit Softwarearchitekturen für eingebettete Systeme im Automobil. Der Schwerpunkt liegt hier auf leistungsfähigen Steuergeräten und den darauf eingesetzten Softwarearchitekturen. AUTOSAR (AUTomotive Open System ARchitecture) verfolgt das Ziel, eine offene und standardisierte Softwarearchitektur für elektronische Steuergeräte im Fahrzeug (ECUs) zu entwickeln. Die AUTOSAR Adaptive Platform adressiert dabei u.a. Linux-basierte Systeme etwa im Bereich Infotainment oder Fahrerassistenzsysteme.

 

 

Mobile Endgeräte und Anwendungen sind heutzutage omnipräsent. Sie durchdringen die moderne Arbeitswelt, steuern Industrieanlagen, medizinische Geräte, werden für Bezahlvorgänge genutzt und müssen dabei hohe Sicherheitsanforderungen erfüllen. Die Mitarbeitenden des Forschungsbereichs Sichere Betriebssysteme haben langjährige und vielfältige Erfahrung mit Betriebssystemen und sicherheitskritischen Anwendungen für mobile Endgeräte. 2012 entwickelten Mitarbeiterinnen und Mitarbeiter des Forschungsbereichs ein Attestierungsprotokoll für Baseband-Stacks, 2013 eine Betriebssystemlevel-Virtualisierung auf Android-Basis und 2014 TrustID, eine Lösung zum Ableiten von digitalen Identitäten des nPAs.

Eingebettet Systeme finden sich in immer mehr Gegenständen unseres Alltags. Solche eingebetteten Systeme übernehmen vielfältige, anspruchsvolle und teilweise sicherheitskritische Aufgaben. Der Forschungsbereich Sichere Betriebssysteme entwickelt sichere eingebetettete Plattformen mit speziell gehärtetem Kernel und Betriebssystem-Stack, Hardware Security Tokens, Trusted Execution Environments und Virtualisierung für starke Isolation. Ziel dabei ist der zuverlässige und sichere Betrieb (vernetzter) eingebetteter Systeme und die Integration von Sicherheitsfeatures in diese, zumeist in ihren Ressourcen limitierten, Geräte.

Trusted Computing beschreibt Technologien und Lösungsansätze zur Verbesserung der IT-Sicherheit durch Hardwarerweiterungen und die zugehörigen Softwarelösungen. In der Trusted Computing Group (TCG) haben sich mehrere große Hardwarehersteller und Softwareanbieter zusammengeschlossen und entwickeln gemeinsam konkrete Strategien zur Sicherung von Systemen, Netzwerken und Anwendungen.

Das Fraunhofer AISEC ist Mitglied der TCG und entwickelt Lösungen, um kritische Daten und Systeme vor der wachsenden Zahl an Angriffen zu schützen und die Einhaltung gesetzlicher Vorschriften durch hardware- und softwarebasierte Lösungen sicherzustellen. Dafür bündelt das Fraunhofer AISEC Kompetenzen aus verschiedenen Fachgebieten.

Ausgewählte Projekte

 

GyroidOS

GyroidOS ist eine sichere Virtualisierungslösung auf Betriebssystem-Ebene mit Fokus auf hardwarebasierter Plattformsicherheit. Es unterstützt Zertifizierungsprozesse nach Industriestandards und bietet im Gegensatz zu anderen Container-Lösungen einen kleinen Software-Stack und zusätzliche Isolation von privilegierten Systemkomponenten.

 

6G-ANNA

Im BMBF-Forschungsprojekt »6G-ANNA« bringt die Abteilung Secure Operating Systems ihre Cybersicherheits-Expertise im Feld »Confidential Computing« ein. 

 

IMMUNE

Das Vorhaben IMMUNE erhöht die Resilienz der Factory of the Future gegenüber Cyber-Angriffen. Die Informationssicherheit in diesen Systemen wird durch flexible und verteilte Sicherheitsfunktionalität umgesetzt.

 

 

Privacy BlackBox

Das Fraunhofer AISEC entwickelt mit der Privacy BlackBox eine datenschutzkonforme Dashcam, die wie eine normale Dashcam funktioniert und durch ein zweigliedriges Lösungskonzept den Schutz personenbezogener Daten garantiert.

Weitere Projekte

IntelliSecTest

In den vergangenen Jahren hat die Bedrohung von IT-Systemen durch verschiedenste Angreifer und Angriffe massiv zugenommen. Eine Vielzahl der erfolgreichen Angriffe hätte durch fortschrittliche Sicherheitstests, insbesondere ausführliches Fuzzing der verwendeten Software, im Vorfeld verhindert werden können. Aktuell ist es jedoch technisch sehr aufwändig, solche Tests durchzuführen. Vor allem erfordern Durchführung und Auswertung der Tests eine hohe technische Expertise bei gleichzeitigem Mangel an qualifiziertem Personal.
Das Projekt IntelliSecTest nutzt neuartige Ergebnisse in den Bereichen der statischen und dynamischen Analyse sowie der Testfallgenerierung und kombiniert diese mit passenden Methoden der künstlichen Intelligenz. Hierdurch entsteht ein neues Werkzeug zur automatisierten statischen und dynamischen Analyse von IT-Systemen, insbesondere zur präzisen Erkennung von Softwareschwachstellen in C/C++-Programmcode. Dieses Werkzeug wird als sogenanntes White Box-Verfahren in der Lage sein, verständlich aufbereitete Analyseberichte zu generieren, welche wiederum effiziente und somit kostengünstige Security-Tests ermöglichen.

HIVE

Das HIVE-Projekt erforscht innovative Verfahren zum Integritätsschutz mithilfe von Virtualisierungslösungen, um daraus ableitend verbesserte Verfahren zur Anomalieerkennung realisieren zu können. Anwendungsgebiete der Projektergebnisse sind unter anderem die Sicherung von komplexen eingebetteten Computersystemen, z.B. im Automotive-Bereich, sowie der Schutz vor Verletzung des geistigen Eigentums in der Anlagenindustrie bzw. bei Werkzeugmaschinen.

Im Rahmen des Projekts wird unter anderem ein virtualisierungsunterstützendes Hardware-Security-Module (HSM) konzipiert und prototypisch implementiert. In Verbindung mit einer Virtualisierungslösung auf Grundlage des sicheren, Mikrokern-basierten Betriebssystems PikeOS entwirft das Konsortium darauf aufbauend eine Systemarchitektur (siehe Grafik), die es erlaubt sichheitskritische, sicherheitsunkritische und funktionssicherheitskritische Anwendungen auf ein und derselben Zielplattform zu betreiben. Zu entwickelnde Betriebssystemdienste und das HSM arbeiten dabei zusammen, so dass unterschiedliche Sicherheitskontexte für die verschiedenen virtuellen Umgebungen zur Verfügung stehen. Darüber hinaus werden sicherheitskritische Referenzanwendungen sowie Protokolle konzipiert, implementiert und evaluiert, die auf das zugrunde liegende HSM und die Verfahren zur Anomalieerkennung zurückgreifen.

Ausgewählt Initiativen und Kooperationen

 

Fraunhofer Academy

Lernlabor Cybersicherheit

Im Rahmen des Lernlabors Cybersicherheit bietet das Fraunhofer AISEC Schulungen mit dem Schwerpunkt Embedded Systems, Mobile Security, Internet of Things und weiteren Themen an.

 

Leistungszentrum

Sichere Intelligente Systeme

Das Leistungszentrum »Sichere intelligente Systeme« ist ein Zusammenschluss der sechs Fraunhofer-Institute AISEC, EMFT, IKS, IBP, IGCV und IVV mit der TU München, der Universität der Bundeswehr sowie der Hochschule München.  

 

Sicherer Datenaustausch

International Data Spaces

Die International Data Spaces ermöglichen das souveräne, und damit selbstbestimmte Teilen von Daten über Unternehmensgrenzen hinweg.

Publikationen

  • Tobias Holl, Katharina Bogad and Michael Gruber. „Whiteboxgrind – Automated Analysis of Whitebox Cryptography”. In: Constructive Side-Channel Analysis and Secure Design. Ed. by E. B. Kavun and M. Pehl. COSADE 2023. Springer Nature Switzerland, 221–240, 2023.
  • Konrad Hohentanner, Philipp Zieris and Julian Horsch. „CryptSan: Leveraging ARM Pointer Authentication for Memory Safety in C/C++”. In: Proceedings of the 38th ACM/SIGAPP Symposium on Applied Computing. SAC ’23. New York, NY, USA: Association for Computing Machinery, 2023.

  • Oliver Braunsdorf, Stefan Sessinghaus, Julian Horsch. “Compiler-based Attack Origin Tracking with Dynamic Taint Analysis“. In: Information security and cryptology - ICISC 2021 (2022). DOI 10.1007/978-3-031-08896-4_9.
  • Felix Wruck, V. Sarafov, Florian Ralph Jakobsmeier, Michael Weiß. “GyroidOS: Packaging Linux with a Minimal Surface”. In: SaT-CPS 2022, ACM Workshop on Secure andTrustworthyCyber-Physical Systems. Proceedings (2022). DOI 10.1145/3510547.3517917.
  • Monika Huber, Sascha Wessel, Gerd Brost, and Nadja Menz. “Building Trust in Data Spaces,” In: Designing Data Spaces (2022). DOI: 10.1007/978-3-030-93975-5_9; DOI: 10.24406/publica-654 

  • Emanuel Q. Vintila, Philipp Zieris, and Julian Horsch. “MESH: A Memory-Efficient Safe Heap for C/C++”. In: Proceedings of the 16th International Conference on Availability, Reliability and Security. ARES ’21. Vienna, Austria: ACM, Aug. 2021. ISBN: 978-1-4503-9051-4.
    DOI: 10.1145/3465481.3465760.
    URL: https://doi.org/10.1145/3465481.3465760.
  • Boris Otto, Alina Rubina, Andreas Eitel, Andreas Teuscher, Anna Maria Schleimer, Christoph Lange, Dominik Stingl, et al. "GAIA-X and IDS." In: InDaSpacePlus, 2021. DOI: 10.24406/publica-fhg-301324.

  • Fabian Franzen, Manuel Andreas, and Manuel Huber. “FridgeLock: Preventing Data Theft on Suspended Linux with Usable Memory Encryption”. In: Proceedings of the 10th ACM on Conference on Data and Application Security and Privacy. CODASPY ’20. New Orleans, LA, USA: ACM, 2020, p. 6.
  • Katharina Bogad and Manuel Huber. “Harzer Roller: LinkerBased Instrumentation for Enhanced Embedded Security Testing”. In: Proceedings of the 3rd Reversing and Offensiveoriented Trends Symposium. ROOTS ’19. Vienna, Austria: ACM, 2019.
  • Meng Xu, Manuel Huber, Zhichuang Sun, Paul England, Marcus Peinado, Sangho Lee, Andrey Marochko, Dennis Mattoon, Rob Spiger, and Stefan Thom. “Dominance as a New Trusted Computing Primitive for the Internet of Things”. In: 2019 IEEE Symposium on Security and Privacy (SP). IEEE. 2019.

  • Norman Hänsch, Andrea Schankin, Mykolai Protsenko, Felix Freiling, and Zinaida Benenson. “Programming Experience Might Not Help in Comprehending Obfuscated Source Code Efficiently”. In: Fourteenth Symposium on Usable Privacy and Security (SOUPS 2018). Baltimore, MD: USENIX Association, 2018, pp. 341–356. ISBN: 9781931971454.
    URL: https://www.usenix.org/conference/soups2018/presentation/hansch.
  • Manuel Huber, Julian Horsch, Junaid Ali, and Sascha Wessel. “Freeze and Crypt: Linux Kernel Support for Main Memory Encryption”. In: Computers & Security (2018). ISSN: 01674048. DOI: 10.1016/j.cose.2018.08.011. URL: http://www.sciencedirect.com/science/article/pii/S0167404818310435.
  • Anatoli Kalysch, Oskar Milisterfer, Mykolai Protsenko, and Tilo Müller. “Tackling Androids Native Library Malware with Robust, Efficient and Accurate Similarity Measures”. In: Proceedings of the 13th International Conference on Availability, Reliability and Security. ARES 2018. Hamburg, Germany: ACM, 2018, 58:1–58:10. ISBN: 9781450364485. DOI: 10.1145/3230833.3232828. URL: http://doi.acm.org/10.1145/3230833.3232828.
  • Dominique Seydel, Gereon Weiß, Daniela Pöhn, Sascha Wessel, and Franz Wenninger. “Safety & Security Testing of Cooperative Automotive Systems”. In: Embedded World Conference 2018 (2018). Ed. by WEKA Fachmedien.
  • Philipp Zieris and Julian Horsch. “A LeakResilient Dual Stack Scheme for BackwardEdge ControlFlow Integrity”. In: Proceedings of the 2018 ACM on Asia Conference on Computer and Communications Security. ASIA CCS ’18. Incheon, Republic of Korea: ACM, June 2018. ISBN: 9781450355766.
    DOI: 10.1145/3196494.3196531. URL: http://doi.acm.org/10.1145/3196494.3196531.