Skip to main content
QUICK REVIEW

[Paper Review] Fallout: Reading Kernel Writes From User Space

Marina Minkin, Daniel Moghimi|arXiv (Cornell University)|May 29, 2019
Security and Verification in Computing44 references39 citations
TL;DR

Fallout is a transient execution attack that leaks kernel-written data into user space via the store buffer, bypassing Meltdown-style defenses and enabling kernel data leaks and KASLR derandomization.

ABSTRACT

Recently, out-of-order execution, an important performance optimization in modern high-end processors, has been revealed to pose a significant security threat, allowing information leaks across security domains. In particular, the Meltdown attack leaks information from the operating system kernel to user space, completely eroding the security of the system. To address this and similar attacks, without incurring the performance costs of software countermeasures, Intel includes hardware-based defenses in its recent Coffee Lake R processors. In this work, we show that the recent hardware defenses are not sufficient. Specifically, we present Fallout, a new transient execution attack that leaks information from a previously unexplored microarchitectural component called the store buffer. We show how unprivileged user processes can exploit Fallout to reconstruct privileged information recently written by the kernel. We further show how Fallout can be used to bypass kernel address space randomization. Finally, we identify and explore microcode assists as a hitherto ignored cause of transient execution. Fallout affects all processor generations we have tested. However, we notice a worrying regression, where the newer Coffee Lake R processors are more vulnerable to Fallout than older generations.

Motivation & Objective

  • Motivate understanding of transient execution attacks beyond Meltdown and Foreshadow.
  • Demonstrate a novel vulnerability in the store buffer forwarding (WTF) that leaks privileged data.
  • Show how Fallout can reconstruct recently written kernel data from user space and derandomize kernel addresses.
  • Assess the impact across Intel architectures and identify microcode-assisted transient execution risks.

Proposed method

  • Describe the WTF (Write Transient Forwarding) optimization in the store buffer.
  • Explain how a faulty load transiently forwards a value from a preceding store when partial address matches occur.
  • Demonstrate exploitation via a fault-inducing load and a cache covert channel (Flush+Reload).
  • Characterize hardware behavioral dependencies across architectures (Pre Coffee Lake R vs Coffee Lake R).
  • Experimentally measure store buffer size and how hyper-threading affects partitioning of store buffers.

Experimental results

Research questions

  • RQ1Can unprivileged user processes read data recently written by the kernel using the WTF optimization?
  • RQ2Do hardware defenses (Meltdown-style mitigations) protect against Fallout across Intel generations?
  • RQ3Can Fallout derandomize Kernel Address Space Layout Randomization (KASLR)?
  • RQ4How do architecture and microcode assists influence the viability of Fallout across CPU generations?

Key findings

  • Fallout enables reading kernel-written values from user space by exploiting the store buffer and Write Transient Forwarding (WTF).
  • Coffee Lake R shows a regression where certain fault-suppression mechanisms are required for WTF to leak, unlike earlier generations.
  • The attack can derandomize kernel addresses, undermining KASLR protections.
  • Store buffer size is consistent with 56 entries on Skylake-era architectures, with partitioning between hyperthreads confirmed.
  • Microcode assists can trigger transient execution independent of faulting exceptions, expanding potential attack surfaces.

Better researchstarts right now

From reading papers to final review, dramatically reduce your research time.

No credit card · Free plan available

This review was created by AI and reviewed by human editors.