CRJul 15, 2020

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

arXiv:2007.07586v280 citations
AI Analysis

This addresses security risks for developers and users of SGX enclaves, exposing vulnerabilities in widely deployed software, though it is incremental as it builds on symbolic execution techniques.

The paper tackled the problem of memory corruption vulnerabilities in SGX enclaves, which are exploitable despite the enclave mode's protections, and developed TeeRex to automatically analyze enclave binaries, revealing vulnerabilities in multiple public enclaves including those from Intel, Baidu, and WolfSSL.

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.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes