A newly disclosed attack targeting Intel processors utilizes CPU voltage modifications to expose data stored using Intel’s Software Guard Extensions (SGX).
Called “Plundervolt” and tracked as CVE-2019-11157, the attack was discovered by a team of researchers from the University of Birmingham, UK; Graz University of Technology, Austria; and the imec-DistriNet research group at KU Leuven, Belgium, and was initially reported to Intel six months ago.
The chip maker has already issued firmware updates to address the flaw and says it is not aware of the bug being exploited in live attacks. However, installing the security updates is recommended for all users.
“When SGX is enabled on a system, a privileged user may be able to mount an attack through the control of CPU voltage settings with the potential to impact the confidentiality and integrity of software assets. Intel has worked with system vendors to develop a microcode update that mitigates the issue by locking voltage to the default settings,” Intel explains.
In a whitepaper (PDF), the security researchers explain that the attack is possible because the CPU frequency and voltage are designed to work as a pair, based on the current load. Thus, modifying the voltage when the processor operates at a certain frequency would result in errors.
As part of the Plundervolt attack, an adversary that already has high privileges on a system uses specific software to abuse the Intel Core voltage scaling interface and corrupt the integrity of SGX enclave computations.
By introducing predictable faults within the processor package during enclave computations, the researchers were able to recover keys from cryptographic algorithms and even induce memory safety vulnerabilities into bug-free enclave code.
Modern processors, the researchers note, pack various optimizations that ensure they have low power consumption needs. Thus, both clock frequency and supply voltage are kept at a minimum and only scaled when required. Moreover, the dynamic voltage and frequency scaling features are exposed only to privileged system software.
What the researchers discovered was that they could trigger faulty multiplications inside an SGX enclave through undervolting during computations. Next, the researchers demonstrated they could apply undervolting to real-world uses and leak secrets from enclaves.
The researchers were able to apply the technique to inject faults in Intel SGX’s hardware-level key derivation instructions, which could lead to exposing information about the processor’s long-term key material, although this should never be exposed to software.
Plundervolt, the researchers demonstrated, can also be abused to cause memory safety misbehavior in specific situations, due to the fact that compilers often rely on correct multiplication results for pointer arithmetic and memory allocation sizes.
“Our current results indicate that the Plundervolt attack affects all SGX-enabled Intel Core processors from Skylake onward. We have also experimentally confirmed the existence of the undervolting interface on pre-SGX Intel Core processors,” the researchers, which also published video demonstrations of the attack, note.
Intel has confirmed that the vulnerability impacts Intel 6th, 7th, 8th, 9th & 10th Generation Core processors, as well as Intel Xeon Processor E3 v5 & v6 and Intel Xeon Processor E-2100 & E-2200 families, and has published an extensive list of affected products.
“Intel recommends that users of the above Intel Processors update to the latest BIOS version provided by the system manufacturer that addresses these issues,” the chip maker notes.