Publications

TeeRex: Discovery and Exploitation of Memory Corruption Vulnerabilities in SGX Enclaves

Type of Publication: Article in Collected Edition

TeeRex: Discovery and Exploitation of Memory Corruption Vulnerabilities in SGX Enclaves

Author(s):
Cloosters, Tobias; Rodler, Michael; Davi, Lucas
Title of Anthology:
Proc. of 29th USENIX Security Symposium
Publication Date:
2020
Fulltext:
TeeRex: Discovery and Exploitation of Memory Corruption Vulnerabilities in SGX Enclaves (732 KB)
Link to complete version:
https://www.usenix.org/conference/usenixsecurity20/presentation/cloosters
Citation:
Download BibTeX

Abstract

Intel's Software Guard Extensions (SGX) introduced new instructions to switch the processor to enclave mode which protects it from introspection. While the enclave mode strongly protects the memory and the state of the processor, it cannot withstand memory corruption errors inside the enclave code. In this paper, we show that the attack surface of SGX enclaves provides new challenges for enclave developers as exploitable memory corruption vulnerabilities are easily introduced into enclave code. We develop TeeRex to automatically analyze enclave binary code for vulnerabilities introduced at the host-to-enclave boundary by means of symbolic execution. Our evaluation on public enclave binaries reveal that many of them suffer from memory corruption errors allowing an attacker to corrupt function pointers or perform arbitrary memory writes. As we will show, TeeRex features a specifically tailored framework for SGX enclaves that allows simple proof-of-concept exploit construction to assess the discovered vulnerabilities. Our findings reveal vulnerabilities in multiple enclaves, including enclaves developed by Intel, Baidu, and WolfSSL, as well as biometric fingerprint software deployed on popular laptop brands.

Full TextSlidesPresentation Video