TU Darmstadt / ULB / TUprints

Enclave Computing Paradigm: Hardware-assisted Security Architectures & Applications

Brasser, Franz Ferdinand Peter (2020)
Enclave Computing Paradigm: Hardware-assisted Security Architectures & Applications.
Technische Universität
doi: 10.25534/tuprints-00011912
Ph.D. Thesis, Primary publication

[img]
Preview
Text
Enclave_Computing_Paradigm.pdf
Copyright Information: CC BY-NC-ND 4.0 International - Creative Commons, Attribution NonCommercial, NoDerivs.

Download (4MB) | Preview
Item Type: Ph.D. Thesis
Type of entry: Primary publication
Title: Enclave Computing Paradigm: Hardware-assisted Security Architectures & Applications
Language: English
Referees: Sadeghi, Prof. Dr. Ahmad-Reza ; Tsudik, Prof. PhD Gene
Date: 2020
Place of Publication: Darmstadt
Date of oral examination: 23 June 2020
DOI: 10.25534/tuprints-00011912
Abstract:

Hardware-assisted security solutions, and the isolation guarantees they provide, constitute the basis for the protection of modern software systems. Hardware-enforced isolation of individual components reduces complexity of the overall software as well as the size and complexity of the individual components. The basic idea is that a reduction in complexity minimizes the probability of vulnerabilities in the software, thus strengthening the system's security. In classical system architectures, an application's security depends on the security of all privileged system entities, for example the Operating System. The Trusted Execution Environment (TEE) concept overcomes the dependence of security critical components on the systems overall security. TEEs provide isolated compartments within a single system, allowing isolated operation of a system's individual components and applications. The enclave computing paradigm enhances the TEE concept by enabling self-contained isolation of system components and applications, fulfilling the needs of modern software. It enables novel use cases by providing many parallel mutually isolated TEE-instances without the need to rely on complex privileged entities. The TEE solutions developed by industry and deployed in today's systems follow distinct design approaches and come with various limitations. ARM TrustZone, which is widely available in mobile devices, is fundamentally limited to a single isolation domain. Intel's TEE solution Software Guard Extensions (SGX) provides multiple mutually isolated execution environments, called enclaves. However, SGX enclaves face severe threats, in particular side-channel leakage, that can void its security guarantees. Preventing side-channel leakage from enclaves in a universal and efficient way is a non-trivial problem. Nevertheless, these deployed TEE solutions enable various novel applications. However, different TEE architectures come with diverse properties and features that require special consideration in the design of TEE applications. Security architectures for embedded systems face additional challenges that have not been solved, neither by industry nor by academic research. These security architectures need to be compliant with and need to preserve all functional requirements of an embedded system. Since network-connected embedded devices are increasingly used in safety critical systems, such as industrial control systems or automotive scenarios, security architectures that combine safety and security aspects are vitally needed. Remote Attestation (RA) is a security service that relies on the isolation guarantees of TEEs. It is of particularly high relevance for connected embedded systems. It allows trust establishment between these devices enabling their reliable collaboration in large connected systems. However, many aspects of RA, such as its scalability in large networks or its applicability in autonomous connected systems, are unexplored. In this dissertation, we present novel isolation architectures that bring the enclave computing paradigm to mobile and embedded platforms. We present the first security architecture for small embedded systems that provides isolated execution enclaves and real-time guarantees. Moreover, we present a novel multi-TEE security architecture for TrustZone-systems bringing the enclave computing paradigm to mobile systems, overcoming TrustZone's fundamental limitation. Furthermore, we deal with Intel SGX's vulnerability to side-channel attacks. We demonstrate the severity of side-channel leakage due to observable memory access patterns of SGX enclaves. To counter side-channel attacks, we present solutions that hide memory access patterns of enclaves for both accesses to enclave-external memory as well as access patterns within enclaves' private memory. We present two TEE-applications that follow different design approaches, leveraging the specific capabilities of Intel SGX and ARM TrustZone, respectively. We introduce a cloud-based machine learning solution that enables privacy-preserving speech recognition utilizing isolated execution enclaves. We also demonstrate the limitations of the enclave computing paradigm and show a (remote) policy enforcement solution for mobile devices, which requires an isolated execution environment with elevated privileges. Additionally, we investigate novel RA schemes, which tackle many important aspects of RA that are highly relevant in emerging connected systems. We develop solutions to prevent the misuse of remote attestation for Denial-of-Service (DoS) attacks and present the first efficient multi-prover attestation scheme. Furthermore, we introduce the concept of data integrity attestation, which allows the efficient and reliable collaboration of autonomous connected devices.

Alternative Abstract:
Alternative AbstractLanguage

Hardware-basierte Sicherheitslösungen und die durch sie gebotenen Sicherheitsgarantien bilden die Basis zum Schutz moderner Softwaresysteme. Durch die Isolation von Systemkomponenten durch Hardwaremechanismen können die Größe und Komplexität des Gesamtsystems als auch der individuellen Komponenten reduziert werden. Somit sorgt Isolation für eine Verbesserung der Systemsicherheit, denn eine Reduktion der Komplexität führt in der Regel gleichzeitig zu einer Reduktion der Wahrscheinlichkeiten von Schwachstellen in der Software. In herkömmlichen Computerarchitekturen hängt die Sicherheit einer Anwendung von der Sicherheit aller privilegierten Systemkomponenten, wie etwa dem Betriebssystem, ab. Das Konzept von Trusted Execution Environments (TEEs) überwindet diese Abhängigkeit, d.h. sicherheitskritische Systemkomponenten sind nicht mehr von der Sicherheit des Gesamtsystems abhängig. TEEs stellen isolierte Bereiche innerhalb eines einzelnen Systems bereit, diese erlauben die abgeschottete Ausführung der individuellen Komponenten eines Systems. Das Enclave Computing Paradigma entwickelt das TEE Konzept weiter und bietet in sich geschlossene Isolationsbereiche für Systemkomponenten und Anwendungen. Somit erfüllt es die Anforderungen moderner Software. Es ermöglicht neuartige Anwendungsfälle, da viele parallele, wechselseitig isolierte TEE-Instanzen geschaffen werden, ohne auf komplexe privilegierte Komponenten angewiesen zu sein. Die durch die Industrie entwickelten und aktuell verfügbaren TEE-Lösungen folgen unterschiedlichen Ansätzen und leiden unter verschiedenen Nachteilen. ARM TrustZone, das in vielen mobilen Systemen integriert ist, hat die zentrale Einschränkun, dass es nur eine einzige Isolationsdomäne bietet. Intel Software Guard Extensions (SGX) bietet hingegen viele, wechselseitig isolierte Ausführungsumgebungen, die Encalves genannt werden. Allerdings werden SGX-Enclaves von schwerwiegenden Schwachstellen bedroht, die ihre Sicherheitsgarantien zunichtemachen können. Vor allem Angriffe, die Seitenkanäle ausnutzen, bedrohen SGX. Eine generelle und effiziente Lösung zu finden, die Seitenkanalangriffe auf Enclaves verhindern kann, stellt dabei ein nicht-triviales Problem dar. Trotz ihrer Probleme ermöglichen diese bereits verfügbaren TEE-Lösungen viele neue Anwendungen. Bei der Konzeptionierung und Entwicklung von TEE-Anwendungen müssen allerdings die spezifischen Eigenschaften der jeweiligen TEE-Architekturen berücksichtigt werden. Bei Sicherheitsarchitekturen für eingebettete Systeme ergeben sich zusätzliche Herausforderungen, die überwunden werden müssen. Dies ist bislang weder der Industrie noch der akademischen Forschung gelungen, da diese Sicherheitsarchitekturen die funktionalen Eigenschaften des zugrundeliegenden Systems erhalten müssen. Vernetzte eingebettete System werden zunehmend in sicherheitskritischen Bereichen, etwa in der Industrieautomatisierung oder in der Fahrzeugsteuerung, eingesetzt. Deshalb sind hier Sicherheitsarchitekturen, die Funktionalität und Sicherheit gleichermaßen gewährleisten, von entscheidender Bedeutung. Remote Attestation (RA) ist ein Sicherheitsmechanismus, der auf den Isolationsgarantien von TEEs aufbaut. RA ist besonders wichtig im Kontext vernetzter eingebetteter Systeme. Es erlaubt den Aufbau von Vertrauensverhältnissen zwischen Systemen und ermöglicht so die verlässliche Kollaboration dieser in weitvernetzten Anlagen. Allerdings sind viele Aspekte von RA, etwa zur Skalierbarkeit in großflächigen Netzwerken oder zur Anwendbarkeit in autonomen Systemen, noch unerforscht. In dieser Dissertation stellen wir neue Isolationsarchitekturen vor, die das Enclave-Konzept für Mobilsysteme und eingebettete Systeme umsetzen. Wir präsentieren die erste Sicherheitsarchitektur für kleine eingebettete Systeme, die isolierte Ausführungsumgebungen ermöglicht und gleichzeitig Echtzeitgarantien bietet. Für mobile Systeme präsentieren wir eine neuartige Sicherheitsarchitektur, die viele unabhängige TEE-Instanzen auf TrustZone-basierten Systemen ermöglicht, und somit die zentrale Einschränkung von TrustZone überwindet. Weiterhin betrachten wir die Verwundbarkeit von Intel SGX durch Seitenkanalangriffe. Wie demonstrieren die Ernsthaftigkeit von Angriffen, welche die Speicherzugriffsmuster einer SGX-Enclave überwachen. Zur Abwehr von Seitenkanalangriffen präsentieren wir Lösungen, die sowohl den Zugriff einer Enclave auf externen Speicher wie auch die Zugriffsmuster im Enclave-eigenen Speicher verbergen. Wie präsentieren zwei TEE-Anwendungen, die unterschiedlichen Konzepten folgen, dabei nutzen sie die spezifischen Möglichkeiten von Intel SGX bzw. ARM TrustZone. Wir stellen eine Cloud-basierte Lösung für maschinelles Lernen vor, die Privatsphäreschützende Spracherkennung durch die Nutzung von Enclaves ermöglicht. Zudem zeigen wir die Grenzen des Enclave Computing Paradigmas anhand einer Lösung auf, die ortsabhängige Nutzungsregeln für Mobilgeräte durchsetzen kann, welche jedoch nur mit einer isolierten Ausführungsumgebung mit erhöhten Privilegien umsetzbar ist. Darüber hinaus entwickeln wir neue RA Mechanismen, die wichtige Aspekte betrachten, die vor allem im Kontext von künftigen vernetzten Systemen hohe Relevanz haben. Wir entwickeln Lösungen, die den Missbrauch von Remote Attestation für Dienstverweigerungsattacken (Denial-of-Service) verhindern, und wir präsentieren das erste Protokoll zur effizienten gleichzeitigen Attestierung vieler Geräte. Weiterhin führen wir das Konzept der Datenintegritätsattestierung ein, welches die verlässliche und effiziente Kollaboration von autonom interagierenden Geräten ermöglicht.

German
URN: urn:nbn:de:tuda-tuprints-119123
Classification DDC: 000 Generalities, computers, information > 004 Computer science
Divisions: 20 Department of Computer Science > System Security Lab
Date Deposited: 24 Aug 2020 06:56
Last Modified: 24 Aug 2020 06:56
URI: https://tuprints.ulb.tu-darmstadt.de/id/eprint/11912
PPN: 468710558
Export:
Actions (login required)
View Item View Item