logo

Plundervolt: Flipping Bits from Software without Rowhammer

Conference:  BlackHat USA 2020

2020-08-06

Summary

Plunder Vault is a new type of attack that breaks the integrity of SGX and induces memory corruption in bug-free code, allowing for the leakage of sensitive information.
  • Plunder Vault is a new type of attack that breaks the integrity of SGX
  • It induces memory corruption in bug-free code
  • Sensitive information can be leaked through this attack
  • Examples of leaked information include RSA keys and SQS
The presenters demonstrated how they were able to use pointer arithmetic to move something stored inside Intel's SGX into user space, where anyone can read it. This allowed them to leak RSA keys and SQS, among other sensitive information.

Abstract

Fault attacks pose a substantial threat to the security of our modern systems, allowing to break cryptographic algorithms or to obtain root privileges on a system. Fortunately, fault attacks have always required local physical access to the system. This changed with the Rowhammer attack (Black Hat USA 2015), which for the first time enabled an attacker to mount a software-based fault attack. However, as countermeasures against Rowhammer are developed and deployed, fault attacks require local physical access again.In this Black Hat talk, we present the next step, a long-awaited alternative to Rowhammer, a second software-based fault attack primitive: Plundervolt.Dynamic frequency and voltage scaling features have been introduced to manage ever-growing heat and power consumption in modern processors. Design restrictions ensure frequency and voltage are adjusted as a pair, based on the current load, because for each frequency, there is only a certain voltage range where the processor can operate correctly. For this purpose, many processors (including the widespread Intel Core series) expose privileged software interfaces to regulate processor frequency and operating voltage dynamically.In this talk, we show that these privileged interfaces can be reliably exploited to undermine the system's security. We present the Plundervolt attack, in which a privileged software adversary abuses an undocumented Intel Core voltage scaling interface to corrupt the integrity of Intel SGX enclave computations. Plundervolt carefully controls the processor's supply voltage during an enclave computation, inducing predictable faults within the processor package. Consequently, even Intel SGX's memory encryption/authentication technology cannot protect against Plundervolt. In multiple case studies, we show how the induced faults in enclave computations can be leveraged in real-world attacks to recover keys from cryptographic algorithms (including the AES-NI instruction set extension) or to induce memory safety vulnerabilities into bug-free enclave code. We finally discuss why mitigating Plundervolt is not trivial, requiring trusted computing base recovery through microcode updates or hardware changes.We have responsibly disclosed our findings to Intel on June 7, 2019. Intel assigned CVE-2019-11157 to track this vulnerability and refer to mitigations. The scientific paper on Plundervolt will appear at the IEEE Security & Privacy Symposium 2020.

Materials:

Tags: