Authors:
David Schrammel
1
;
Salmin Sultana
2
;
Michael LeMay
2
;
David Durham
2
;
Martin Unterguggenberger
1
;
Pascal Nasahl
1
and
Stefan Mangard
1
Affiliations:
1
Graz University of Technology, Austria
;
2
Intel Labs, U.S.A.
Keyword(s):
Fine-Granular Memory Encryption, Memory Safety, Exploit Mitigation, Intel® TME-MK.
Abstract:
Memory encryption is an effective security building block broadly available on commodity systems from Intel® and AMD. Schemes, such as Intel® TME-MK and AMD SEV, help provide data confidentiality and integrity, enabling cryptographic isolation of workloads on shared platforms. However, due to their coarse encryption granularity (i.e., pages or entire virtual machines), these hardware-enabled primitives cannot unleash their full potential to provide protection for other security applications, such as memory safety. To this end, we present a novel approach to achieving sub-page-granular memory encryption without hardware modifications on off-the-shelf systems featuring Intel®’s TME-MK. We showcase how to utilize our fine-grained memory encryption approach for memory safety by introducing MEMES. MEMES is capable of mitigating both spatial and temporal heap memory vulnerabilities by encrypting individual memory objects with different encryption keys. Compared to other hardware-based memo
ry safety schemes, our approach works on existing commodity hardware, which allows easier adoption. Our extensive analysis attests to the strong security benefits which are provided at a geometric mean runtime overhead of just 16–27%.
(More)