
Computer chipmakers have spent years strengthening processors against attacks that exploit the way modern CPUs predict what they will need to do next.
But MIT researchers have discovered a new technique that can slip through some of these defenses by targeting an extremely small window of opportunity.
Researchers Daniël Trujillo and Mengjia Yan from MIT’s Computer Science and Artificial Intelligence Laboratory (CSAIL) call the new class of attacks TONTOU.
Their findings reveal a weakness in an important assumption behind existing processor security measures.
Modern processors use prediction systems to guess which instructions a program will execute next. These predictions improve performance because the processor can start preparing work before it knows for certain that the work will be needed.
Unfortunately, attackers can sometimes manipulate this prediction process and trick a processor into temporarily accessing sensitive information.
To prevent this, modern security defenses can clean or isolate the processor’s prediction machinery before it is used. The problem is timing. The cleaning operation and the use of the prediction system cannot happen at exactly the same moment. There is always a tiny gap between them.
The MIT researchers discovered that attackers can exploit this gap—even when it lasts for only a few computer instructions.
Their technique, called INTERRUPT INJECTION, takes advantage of interrupts. Computers routinely interrupt their current work to deal with events such as timers, network activity and hardware requests. Programs can also set timers themselves.
By carefully controlling the timing of an interrupt, the researchers were able to make a processor temporarily switch tasks during the vulnerable period. Code executed during that interruption could then change the processor’s prediction state after it had already been cleaned.
The researchers tested four generations of processors from Intel and AMD and successfully caused incorrect predictions on both companies’ chips. Some protections worked on certain processor generations but failed on others, showing that similar security features can behave differently depending on how they are implemented.
One AMD defense, known as saferet, leaves a vulnerable window only two instructions long—normally lasting just tens of nanoseconds. The researchers still managed to target it by temporarily slowing the processor at precisely the right moment.
They also demonstrated that the weakness could have real security consequences. On an AMD computer running a current Linux kernel, the researchers built an attack capable of reading protected memory at about five bytes per second.
That sounds extremely slow, but sensitive information can be small. After defeating another security protection, the researchers were able in some attempts to locate and copy /etc/shadow, a protected Linux file containing password hashes.
The researchers reported their findings to AMD and Intel and worked with Linux developers and AMD to coordinate security responses. AMD has since released a mitigation that users can receive through operating-system updates.
The study highlights a difficult reality of modern computer security: Even a vulnerability lasting only a few nanoseconds can sometimes be enough for a carefully designed attack.


