MIT Researchers Uncover TONTOU Attack Bypassing Spectre v2 Defenses
A new class of speculative execution attack targets a timing window in Intel and AMD CPUs to leak sensitive kernel memory.
Researchers from MIT CSAIL have discovered a new class of speculative execution attack known as TONTOU, or Time-of-Neutralization to Time-of-Use. The vulnerability allows attackers to bypass existing Spectre v2 defenses on both Intel and AMD processors to leak sensitive data from the kernel.
The attack works by exploiting the "post-neutralization window," which is the brief gap between when a CPU sanitizes its branch predictor state and when that state is actually utilized. By using precisely timed "interrupt injections," attackers can re-poison the branch predictor after it has been cleaned but before the victim branch is executed. MIT researchers demonstrated the practical application of this technique on AMD Zen 2 processors, successfully leaking root password hashes from the /etc/shadow file. The vulnerability was further validated through testing on Intel Cascade Lake Refresh and Arrow Lake, as well as AMD Zen 2 and Zen 4 processors.
The Failure of Neutralization
This discovery highlights a critical flaw in current Spectre v2 mitigations. Industry-standard defenses, such as Intel's eIBRS (entry neutralization) and AMD's Safe RET (in-place neutralization), were specifically designed to isolate or clear branch predictor states. The goal of these mitigations is to prevent malicious actors from steering speculative execution toward "disclosure gadgets" that reveal protected data. However, TONTOU proves these hardware-level defenses are insufficient if an attacker can trigger a timer interrupt during the narrow window immediately following neutralization.
Industry Implications
Because the attack is practical for unprivileged local users, it poses a significant security risk to multi-tenant container platforms. In these environments, multiple users share a single kernel, creating a high-value target for cross-user data theft. Daniël Trujillo, one of the researchers, noted that the attack becomes an issue any time unprivileged code with timer availability is executed on a system sharing a kernel with a victim.
The Path Forward
While the attack is technically complex—the researchers' demo exploit required approximately 18 minutes per attempt—it demonstrates that software-triggered interrupts can still undermine hardware-level speculative execution fixes. The industry must now determine if existing software patches can close this timing window or if more fundamental hardware redesigns are required to fully eliminate the post-neutralization gap. For now, the discovery serves as a reminder that the battle against speculative execution vulnerabilities remains an ongoing struggle.