Please use this identifier to cite or link to this item: http://dx.doi.org/10.14279/depositonce-15954
For citation please use:
Main Title: Security analysis of hardware-OS interfaces in Linux
Translated Title: Sicherheitsanalyse von Hardware-Betriebssystem-Schnittstellen in Linux
Author(s): Hetzelt, Felicitas
Advisor(s): Seifert, Jean-Pierre
Referee(s): Seifert, Jean-Pierre
Franz, Michael
Payer, Mathias
Shulman, Haya
Granting Institution: Technische Universität Berlin
Type: Doctoral Thesis
URI: https://depositonce.tu-berlin.de/handle/11303/17175
http://dx.doi.org/10.14279/depositonce-15954
License: http://rightsstatements.org/vocab/InC/1.0/
Abstract: While the System Call (SC) interface between the userspace and the Linux Operating System (OS) has received much attention, the interface between the hardware and the OS still lacks thorough analysis. In fact, for many years, a strict hardware-OS security boundary existed in theory, but it was not enforced in practice. Most OS software operated under the assumption of benign hardware, and omitted proper sanitization of peripheral inputs. However, in recent years this view has shifted, as multiple real world attacks arising from compromised hardware have been publicized. This led to the development of hardware and software based mitigations and sparked research interest in analysis methods geared towards the specific properties of hardware-OS interfaces. Still, existing methods continue to suffer from severe applicability and performance issues. E.g., many existing approaches either only support the dynamic analysis of a single peripheral device driver or target solely the Universal Serial Bus (USB) bus, thereby covering only a small fraction of potential attack vectors. In addition, most dynamic approaches are hindered due to the unique properties of software consuming peripheral input and report performance measures which are significantly lower compared to analysis tools targeting the SC interface. Furthermore, recently developed Protected Virtual Machine (PVM) technologies aim to transparently protect a complete commodity OS from a higher privileged component (the Hypervisor (HV)). In order to be effective, these technologies rely on secure access to virtualized hardware resources. However, under PVM execution, the access to critical resources like Random Access Memory (RAM) or the Central Processing Unit (CPU) is mediated by the highly privileged untrusted HV. In addition, hardware based mitigation mechanisms targeting non virtualized interfaces do not fully encompass the attack surface exposed the HV. E.g., traditionally inaccessible interfaces like Advanced Configuration and Power Interface (ACPI) or PCI Express (PCIe) still lack proper access control mechanisms, while mitigations to secure RAM and CPU interfaces require specialized approaches, that are geared towards the specific PVM technology. This thesis analyzes the security of hardware-OS interfaces under Linux. To that end, we develop generic analysis methods that address the aforementioned applicability and performance issues. In addition, we examine the security impact of HV mediation on virtual hardware interfaces in the context of PVM execution and describe several attack vectors based on the analysis results. While this work uncovers serious flaws in a wide variety of physical and virtual hardware interfaces, we hope that the developed generic analysis methods and the presented analysis results will continue to guide further improvements to the Linux OS, as well as PVM technologies, in order to protect against future hardware based attack.
Während der System Call (SC) Schnittstelle zwischen der Benutzerseite und dem Linux Betriebssystem (OS) viel Aufmerksamkeit gewidmet wurde, hat die Schnittstelle zwischen der Hardware und dem OS noch keine tiefer greifende Analyse erfahren. Tatsächlich gab es in der Theorie zwar schon viele Jahre lang eine strenge Hardware-OS-Sicherheitsgrenze, diese wurde aber in der Praxis nicht durchgesetzt. Betriebssystemsoftware ging meistens von gutartiger Hardware aus und unterließ daher oftmals die ordnungsgemäße Kontrolle und Bereinigung von Peripherieeingaben. In den letzten Jahren hat sich diese Haltung jedoch geändert, da eine Reihe realer Angriffe, die von kompromittierter Hardware ausgingen, bekannt wurde. Dies führte zur Entwicklung von hardware- und softwarebasierten Gegenmaßnahmen und weckte Interesse an der Erforschung von Analysemethoden, die auf die spezifischen Eigenschaften von Hardware-OS-Schnittstellen ausgerichtet sind. Dennoch kämpfen die bestehenden Verfahren weiterhin mit schwerwiegenden Anwendbarkeits- und Leistungsproblemen. So unterstützen zum Beispiel viele bestehende Ansätze entweder nur die dynamische Analyse eines einzelnen Peripheriegerätetreibers oder sie zielen ausschließlich auf USB (Universal Serial Bus) und decken damit nur einen kleinen Teil potenzieller Angriffsvektoren ab. Darüber hinaus werden die meisten dynamischen Ansätze durch spezifische Eigenschaften der Software, die sich mit Eingaben von Peripheriegeräten befasst, beeinträchtigt und weisen daher im Vergleich zu Analysetools, die nur auf SC-Schnittstellen abzielen, deutlich niedrigere Performance-Werte aus. Außerdem zielen kürzlich entwickelte Technologien für Protected Virtual Machines (PVMs) darauf ab, ein komplettes Standardbetriebssystem transparent vor einer höher privilegierten Komponente (dem sogenannten Hypervisor (HV)) zu schützen. Um wirksam zu sein, sind diese Technologien auf einen sicheren Zugriff auf die virtualisierten Hardware-Ressourcen angewiesen. Bei der PVM-Ausführung wird jedoch der Zugriff auf kritische Ressourcen wie RAM oder CPU durch den hoch privilegierten, aber nicht als vertrauenswürdig einzustufenden HV vermittelt. Darüber hinaus können hardware-basierte Schutzmechanismen, die auf nicht virtualisierte Schnittstellen abzielen, nicht die gesamte Angriffsfläche, die dem HV ausgesetzt ist, erfassen. So sind z.B. für traditionell unzugängliche Schnittstellen wie das Advanced Configuration and Power Interface (ACPI) oder PCI Express (PCIe) noch immer keine geeigneten Zugriffskontrollmechanismen vorhanden, während Abhilfemaßnahmen zur Sicherung von RAM- und CPU-Schnittstellen spezielle Ansätze erfordern, welche auf die jeweilige PVM-Technologie abgestimmt sind. In dieser Arbeit wird die Sicherheit von Hardware-OS-Schnittstellen unter Linux analysiert. Zu diesem Zweck werden generische Analysemethoden entwickelt, welche die oben genannten Probleme der Anwendbarkeit und Leistungsproblematik adressieren. Darüber hinaus untersuchen wir die Sicherheitsauswirkungen der HV-Mediation auf virtuelle Hardware-Schnittstellen im Kontext der PVM-Ausführung und beschreiben mehrere Angriffsvektoren basierend auf den Analyseergebnissen. Diese Arbeit deckt schwerwiegende Schwachstellen in einer Vielzahl von physischen und virtuellen Hardware-Schnittstellen auf. Wir hoffen, dass die entwickelten generischen Analysemethoden und die vorgestellten Ergebnisse zu weiteren Verbesserungen des Linux-Betriebssystems und der PVM-Technologien führen werden, um sich so besser gegen zukünftige hardwarebasierte Angriffe zu schützen.
Subject(s): system security
fuzzing
operating system security
cloud security
Systemsicherheit
Betriebssystemsicherheit
Cloud-Sicherheit
Issue Date: 2022
Date Available: 11-Jul-2022
Exam Date: 20-Jun-2022
Language Code: en
DDC Class: 000 Informatik, Informationswissenschaft, allgemeine Werke
Sponsor/Funder: H2020/832735/EU/Lawful evidence collecting and continuity platform development/LOCARD
BMWi, 01MA17008, Industrial communication for factories (IC4F)
TU Affiliation(s): Fak. 4 Elektrotechnik und Informatik » Inst. Softwaretechnik und Theoretische Informatik » FG Security in Telecommunications
Appears in Collections:Technische Universität Berlin » Publications

Files in This Item:
hetzelt_felicitas.pdf
Format: Adobe PDF | Size: 17.07 MB
DownloadShow Preview
Thumbnail

Item Export Bar

Items in DepositOnce are protected by copyright, with all rights reserved, unless otherwise indicated.