DR.SGX: Automated and adjustable side-channel protection for SGX using data location randomization

Authors: Ferdinand Brasser, Srdjan Čapkun, Alexandra Dmitrienko, Tommaso Frassetto, Kari Kostiainen, and Ahmad-Reza Sadeghi
Proceedings of the 35th Annual Computer Security Applications Conference (ACSAC '19)

Abstract

Recent research has demonstrated that Intel’s SGX is vulnerable to software-based side-channel attacks. In a common attack, the adversary monitors CPU caches to infer secret-dependent data accesses patterns. Known defenses have major limitations, as they require either error-prone developer assistance, incur extremely high runtime overhead, or prevent only specific attacks.

In this paper, we propose data location randomization as a novel defense against side-channel attacks that target data access patterns. Our goal is to break the link between the memory observations by the adversary and the actual data accesses by the victim. We design and implement a compiler-based tool called DR.SGX that instruments the enclave code, permuting data locations at fine granularity. To prevent correlation of repeated memory accesses we periodically re-randomize all enclave data. Our solution requires no developer assistance and strikes the balance between side-channel protection and performance based on an adjustable security parameter.

Research Area: Trusted Computing

People

Dr. Alexandra Dmitrienko
Post-doc (2016 – 2017)
Professor, University Würzburg
Dr. Kari Kostiainen
Senior Scientist

BibTex

@INPROCEEDINGS{brasser2019drsgx,
	isbn = {978-1-4503-7628-0},
	doi = {10.1145/3359789.3359809},
	year = {2019},
	booktitle = {Proceedings of the 35th Annual Computer Security Applications Conference (ACSAC '19)},
	type = {Conference Paper},
	author = {Brasser, Ferdinand and Capkun, Srdjan and Dmitrienko, Alexandra and Frassetto, Tommaso and Kostiainen, Kari and Sadeghi, Ahmad-Reza},
	abstract = {Recent research has demonstrated that Intel's SGX is vulnerable to software-based side-channel attacks. In a common attack, the adversary monitors CPU caches to infer secret-dependent data accesses patterns. Known defenses have major limitations, as they require either error-prone developer assistance, incur extremely high runtime overhead, or prevent only specific attacks.In this paper, we propose data location randomization as a novel defense against side-channel attacks that target data access patterns. Our goal is to break the link between the memory observations by the adversary and the actual data accesses by the victim. We design and implement a compiler-based tool called DR.SGX that instruments the enclave code, permuting data locations at fine granularity. To prevent correlation of repeated memory accesses we periodically re-randomize all enclave data. Our solution requires no developer assistance and strikes the balance between side-channel protection and performance based on an adjustable security parameter.},
	keywords = {SGX; Trusted computing; Side-channels},
	language = {en},
	address = {New York, NY},
	publisher = {Association for Computing Machinery},
	title = {DR.SGX: Automated and adjustable side-channel protection for SGX using data location randomization},
	PAGES = {788 - 800},
	Note = {35th Annual Computer Security Applications Conference (ACSAC 2019); Conference Location: San Juan, PR, USA; Conference Date: December 9-13, 2019}
}

Research Collection: 20.500.11850/389520