An international team of researchers have published details of a new variant on the Rowhammer attack, dubbed RAMBleed, which marks the first time it can be used to read protected memory contents rather than blindly modify it.
First disclosed in 2014, the Rowhammer family of attacks relies on a tendency for dynamic memory to flip bits in one location while reading from another. Rare and undesired during normal usage, and a key reason for mission-critical systems to use error correcting code (ECC) RAM, the researchers found ways to selectively trigger these flipped bits in targeted locations - allowing for memory contents to be overwritten in ways that could crash the system or elevate privileges. A 2018 extension dubbed ECCploit extended Rowhammer to cover ECC memory, though at a considerably slower rate of modification, but still only allowed for modification of protected data.
RAMBleed, announced this week, changes that: Based on the same core vulnerability as Rowhammer, RAMBleed extends it such that data can be read from protected memory rather than just modified - and the team of researchers behind it prove their point by leaking a 2048-bit RSA encryption key from protected memory.
Discovered by Andrew Kwong, Danien Genkin, Daniel Gruss, and Yuval Yarom, the RAMBleed vulnerability is yet another example of side-channel attacks: Vulnerabilities caused by the ability to observe something which changes depending on the data protected from observation, then reconstructing said protected data from those observations. It's an attack technique which has been proving extremely effective in modern processors, though the team's work proves it can also be extended to other components in the system.
The team has confirmed plans to present a paper on the vulnerability, 'RAMBleed: Reading Bits in Memory Without Accessing Them,' at the 41st IEEE Symposium on Security and Privacy in May next year. In the meantime, interested parties can find more information on the official website or in a pre-print version of the paper (PDF warning).
The team has detailed a handful of potential mitigations for RAMBleed: Memory encryption through secure enclave implementations including Intel's Software Guard Extensions (SGX), Arm's Trust Zone, and AMD's Secure Encrypted Virtualisation (SEV); the flushing of sensitive information from memory as quickly as possible following short-lived operations; and, potentially, adding non-determinism into the operating system's memory allocation algorithm to make it more difficult to shift protected data to a particular memory location.
September 18 2020 | 18:30