Racing in Hyperspace: Closing Hyper-Threading Side Channels on SGX with Contrived Data Races

XiaoFeng Wang, Guoxing Chen, Yinqian Zhang, Ten‐Hwang Lai, Tianyu Chen, Sanchuan Chen, Wenhao Wang, Dongdai Lin
2018-05-01

SCID:  54.1/zg2239tm
In this paper, we present HYPERRACE, an LLVM-based tool for instrumenting SGX enclave programs to eradicate all side-channel threats due to Hyper-Threading. HYPERRACE creates a shadow thread for each enclave thread and asks the underlying untrusted operating system to schedule both threads on the same physical core whenever enclave code is invoked, so that Hyper-Threading side channels are closed completely. Without placing additional trust in the operating system's CPU scheduler, HYPERRACE conducts a physical-core co-location test: it first constructs a communication channel between the threads using a shared variable inside the enclave and then measures the communication speed to verify that the communication indeed takes place in the shared L1 data cache-a strong indicator of physical-core co-location. The key novelty of the work is the measurement of communication speed without a trustworthy clock; instead, relative time measurements are taken via contrived data races on the shared variable. It is worth noting that the emphasis of HYPERRACE's defense against Hyper-Threading side channels is because they are open research problems. In fact, HYPERRACE also detects the occurrence of exception-or interrupt-based side channels, the solution.s of which have been studied by several prior works.
Publication Details
Publication Date
2018-05-01
Journal
Publisher
ISSN
Access Type
Author Information
Authors
XiaoFeng Wang
Guoxing Chen
Yinqian Zhang
Ten‐Hwang Lai
Tianyu Chen
Sanchuan Chen
Wenhao Wang
Dongdai Lin
Explore More Research
Use the citation graph to discover related papers and expand your research horizons.
Click any node to explore
Download PDF
100%