DR.SGX: Hardening SGX Enclaves against Cache Attacks with Data Location Randomization

DR.SGX: Hardening SGX Enclaves against Cache Attacks with Data Location Randomization
复制标题

DOI:
--
复制
发表时间:
2017
期刊:
ArXiv
影响因子:
--
通讯作者:
Ferdinand Brasser;Srdjan Capkun;A. Dmitrienko;Tommaso Frassetto;Kari Kostiainen;Urs Müller;Ahmad Sadeghi
Ferdinand Brasser;Srdjan Capkun;A. Dmitrienko;Tommaso Frassetto;Kari Kostiainen;Urs Müller;Ahmad Sadeghi
中科院分区:
其他
文献类型:
--
作者:
Ferdinand Brasser;Srdjan Capkun;A. Dmitrienko;Tommaso Frassetto;Kari Kostiainen;Urs Müller;Ahmad Sadeghi

文献摘要

被引文献

相似文献

最近的研究表明,英特尔的SGX容易受到各种基于软件的侧信道攻击。特别是,监视受害者飞地和不受信任的软件之间共享的CPU缓存的攻击能够准确泄漏秘密飞地数据。已知的防御假设开发人员协助,需要硬件更改,强加高开销,或仅阻止某些已知攻击。在本文中,我们提出了数据位置随机化作为一种新的防御方法,以解决边信道攻击的威胁。我们的主要目标是打破特权对手的该高速缓存观察和受害者的实际数据访问之间的联系。我们设计并实现了一个基于编译器的工具DR.SGX,该工具可以检测安全区代码,从而使数据位置以缓存行的粒度进行排列。我们实现的置换与CPU的密码硬件加速单元提供安全的随机化。为了防止重复内存访问的相关性,我们在执行期间不断地重新随机化所有飞地数据。我们的解决方案有效地保护了许多(但不是所有)安全区免受缓存攻击,并提供了一种互补的安全区加固技术,特别适用于防止不可预测的信息泄漏。
Recent research has demonstrated that Intel’s SGX is vulnerable to various software-based side-channel attacks. In particular, attacks that monitor CPU caches shared between the victim enclave and untrusted software enable accurate leakage of secret enclave data. Known defenses assume developer assistance, require hardware changes, impose high overhead, or prevent only some of the known attacks. In this paper we propose data location randomization as a novel defensive approach to address the threat of side-channel attacks. Our main goal is to break the link between the cache observations by the privileged adversary and the actual data accesses by the victim. We design and implement a compiler-based tool called DR.SGX that instruments enclave code such that data locations are permuted at the granularity of cache lines. We realize the permutation with the CPU’s cryptographic hardware-acceleration units providing secure randomization. To prevent correlation of repeated memory accesses we continuously re-randomize all enclave data during execution. Our solution effectively protects many (but not all) enclaves from cache attacks and provides a complementary enclave hardening technique that is especially useful against unpredictable information leakage.