Side Channels on Intel SGX

The projects have been supported by grant 1566444 and 1750809 from national science foundation.
Intel Software Guard eXtension (SGX) holds promise for drastically improving software security by removing the privileged system software from the trusted computing base. This processor extension provides software applications shielded execution environments, called enclaves, to run private code or operate sensitive data, where both the code and data are isolated from the rest of software systems. Even privileged software layers such as the operating systems are not allowed to directly inspect or manipulate the memory inside the enclaves.

However, SGX is not bulletproof. Although the software running inside SGX enclaves is shielded from the untrusted operating systems, it still requires basic operating system supports such as scheduling, paging, networking and I/O, and various shared micro-architectural resources, such as CPU execution units, caches, TLBs, and DRAMs, with the untrusted system components. Therefore, privileged system software can measure the system resources (e.g., page tables) or micro-architectural resources (e.g., branch target buffers, TLBs, caches and DRAMs) used by enclave programs to infer secrets isolated inside the enclaves. These attacks are called side-channel attacks on SGX.

The high-level goal of these research projects is to systematically understand the side-channel attack surface of Intel SGX, and then devise effective solutions to these side-channel hazards.

Go back to homepage.