Threat Intelligence and Security Incidents
Downfall vulnerability attacks Intel CPUs and steals cryptographic keys and data

A senior research scientist at Google has designed new CPU attacks to exploit a vulnerability called Downfall, which affects multiple Intel microprocessor families and allows stealing passwords, encryption keys, and private data such as emails, messages, or banking information from users sharing the same computer.
The flaw, tracked as CVE-2022-40982, is a transient execution side-channel issue affecting all Intel microprocessors based on the Skylake to Ice Lake families.
An attacker exploiting this security issue can extract sensitive information protected by Software Guard eXtensions (SGX), which is Intel's hardware-based memory encryption that isolates code and data in memory from software on the system.
SGX is currently supported only on server central processing units and provides a trusted, isolated environment for software that even the operating system cannot access.

▍Gathering Confidential Data
Daniel Moghimi, the Google researcher who discovered the vulnerability and responsibly reported it to Intel, said his Downfall attack technique exploits gather instructions that "leak the contents of the internal vector register file during speculative execution."
Gather is part of memory optimization in Intel processors, used to speed up access to scattered data in memory. However, as Moghimi explained in a technical paper he published:
The gather instruction appears to use a temporary buffer shared between sibling CPU threads, which transiently forwards data to later dependent instructions, and the data belongs to different processes executing gather on the same core.
Moghimi developed two Downfall attack techniques: Gather Data Sampling (GDS) and Gather Value Injection (GVI). The former is also the name Intel uses to refer to the issue, while the latter combines GDS with the Load Value Injection (LVI) technique disclosed in 2020.
Using the GDS technique, Moghimi was able to steal AES 128-bit and 256-bit cryptographic keys from a controlled virtual machine (VM) on a separate VM, with each system running on sibling threads of the same CPU core.
In less than 10 seconds, 8 bytes at a time, the researcher successfully stole the AES round keys and combined them to crack the encryption.
"For 100 different keys, the first attack on AES-128 was 100% successful. The first attack success rate for AES-256 was 86%."
The researcher noted that a failed attempt meant recovering the entire key required running the attack multiple times, as the master key data did not appear at a high frequency within 10 seconds.
In addition to cryptographic keys, Moghimi also provided variants of GDS attacks that can steal arbitrary data at rest, as the CPU prefetches such information into SIMD register buffers under two scenarios.
▍Threat Assessment and Microcode Performance Impact
Moghimi pointed out that a Downfall attack requires the attacker to be on the same physical processor core as the victim, which is exactly the environment provided by today's shared computing models.
However, local programs, such as malware, could exploit the vulnerability to steal sensitive information.
Intel was informed of the Downfall/GDS vulnerability last August and worked with Moghimi to study the finding. Microcode updates are now available to mitigate this issue.
Details of the vulnerability were kept confidential for nearly a year to allow OEM device manufacturers and communications service providers (CSPs) time to test and validate solutions and prepare necessary updates for their customers.
Intel stated that the issue does not affect Alder Lake, Raptor Lake, and Sapphire Rapids, and Downfall affects the following three processor families:
● Skylake family (Skylake, Cascade Lake, Cooper Lake, Amber Lake, Kaby Lake, Coffee Lake, Whiskey Lake, Comet Lake)
● Tiger Lake family
● Ice Lake family (Ice Lake, Rocket Lake)
Vivek Tiwari, Intel's vice president of remediation and response engineering, believes that "trying to exploit this outside of a controlled laboratory environment would be a complex task."
Intel also stated that customers can review the company's risk assessment guidelines and decide to disable microcode mitigations through mechanisms available in Windows and Linux, as well as in virtual machine managers (VMs).
Such a decision might be driven by concerns over potential performance issues from Downfall/GDS mitigations, or because the issue does not represent a threat to the environment.
Intel provides customers with threat assessment and performance analysis information, concluding that the impact of the issue in some environments may be minimal.
A potential impact exists under conditions where gather instructions are frequently executed, which is characteristic of high-performance computing (HPC) environments.
However, the chipmaker stated that due to the conditions of the attack and the typical configuration of these environments, the issue may not be considered a threat in HPC environments.
"For example, an attacker would need to run on the same physical core as the target and be able to run untrusted code, which is uncommon in these environments."
▍Software-Based Mitigations
Eliminating the risk of Downfall/GDS attacks requires redesigning the hardware, and the industry is not yet ready to pay the price for that.
Software-based alternatives exist, although these options come with some caveats and are only temporary solutions to the problem. Moghimi proposed four such alternatives, three of which have significant drawbacks:
● Disabling simultaneous multithreading (SMT) can partially mitigate GDS and GVI attacks, but cutting hyper-threading results in a 30% performance loss, and leaks across context switches will still occur.
● Disallowing the affected gather instructions via operating systems and compilers to prevent them from leaking secrets; the drawback is that some applications might break, and leaks can still occur if certain instructions are missed.
● Disabling gather. The drawback here is that applications using this instruction may become slow or even break.
● Preventing transient data forwarding after gather instructions (adding load fences, such as the lfence instruction) can mitigate Downfall, which is the solution Intel adopted in its latest microcode updates.
However, Moghimi warned that without eliminating the root cause of the problem, "automated testing can actually find new vulnerabilities in CPUs."
Creating such tools is not easy, as they require better coverage of hardware and supported instructions, which is a challenging task considering hardware complexity and proprietary barriers.
Intel has released a security advisory for CVE-2022-40982, currently rated at a medium severity level of 6.5.


