SGXIO: Generic Trusted I/O Path for Intel SGX
arXiv:1701.01061 · doi:10.1145/3029806.3029822
Abstract
Application security traditionally strongly relies upon security of the underlying operating system. However, operating systems often fall victim to software attacks, compromising security of applications as well. To overcome this dependency, Intel introduced SGX, which allows to protect application code against a subverted or malicious OS by running it in a hardware-protected enclave. However, SGX lacks support for generic trusted I/O paths to protect user input and output between enclaves and I/O devices. This work presents SGXIO, a generic trusted path architecture for SGX, allowing user applications to run securely on top of an untrusted OS, while at the same time supporting trusted paths to generic I/O devices. To achieve this, SGXIO combines the benefits of SGX's easy programming model with traditional hypervisor-based trusted path architectures. Moreover, SGXIO can tweak insecure debug enclaves to behave like secure production enclaves. SGXIO surpasses traditional use cases in cloud computing and makes SGX technology usable for protecting user-centric, local applications against kernel-level keyloggers and likewise. It is compatible to unmodified operating systems and works on a modern commodity notebook out of the box. Hence, SGXIO is particularly promising for the broad x86 community to which SGX is readily available.
To appear in CODASPY'16
References in corpus (1)
Cited by in corpus (9)
- SgxPectre Attacks: Stealing Intel Secrets from SGX Enclaves via Speculative Execution
- SGXIO: Generic Trusted I/O Path for Intel SGX
- CYCLOSA: Decentralizing Private Web Search Through SGX-Based Browser Extensions
- Aurora: Providing Trusted System Services for Enclaves On an Untrusted System
- Composite Enclaves: Towards Disaggregated Trusted Execution
- Minimum Viable Device Drivers for ARM TrustZone
- Confidential Machine Learning Computation in Untrusted Environments: A Systems Security Perspective
- End-to-End Security for Distributed Event-Driven Enclave Applications on Heterogeneous TEEs
- Fortress: Securing IoT Peripherals with Trusted Execution Environments