Google researchers have written the first-ever attack code that takes advantage of electrical interference between densely packed memory cells, a unique style of attack that could require changes in chip design.
The work builds on a paper published last year by Carnegie Mellon University and Intel, which found it was possible to change binary values in stored memory by repeatedly accessing nearby memory cells, a process called “bit flipping.”
DRAM memory is vulnerable to such electrical interference because the cells are so closely packed together, a result of engineers increasing a chip’s memory capacity.
Chipmakers have known about electrical interference, but may have viewed it as a reliability issue rather than a security problem, wrote Mark Seaborn, a Google software engineer. Google’s work shows bit flipping can have a much larger impact.
They tested 29 x86-based laptops manufactured between 2010 and last year and found some vulnerable. All of the laptops, which were not identified by make and model, used DDR3 DRAM.
A lack of technical information makes it hard to figure out more broadly which computers would be most vulnerable, Seaborn wrote.
“We don’t know for sure how many machines are vulnerable to this attack, or how many existing vulnerable machines are fixable,” he wrote.
Using a technique nicknamed rowhammering, Google’s two exploits repeatedly accessed a row of memory cells, causing binary values in nearby ones to change from a 0 to 1 or the reverse.
Rowhammering allowed the first exploit to complete a privilege escalation attack and escape a sandbox Google has in Chrome that is supposed to limit what an application running in the browser can do. Once out of the sandbox, the code could directly access the operating system, Seaborn wrote.
The second exploit uses rowhammer-induced bit flips to gain kernel-level privileges. The bit flips were introduced in page-table entries, which map virtual memory to physical memory. The code then had read-write access to all of the computer’s physical memory, Seaborn wrote.
There are some mitigations for bit flipping in the latest DDR4 DRAM chips, which have succeeded DDR3 in many laptops and servers. But those mitigations may have been put in place just for reliability reasons, he wrote.
“History has shown that issues that are thought to be ‘only’ reliability issues often have significant security implications, and the rowhammer problem is a good example of this,” he wrote. “Many layers of software security rest on the assumption the contents of memory locations don’t change unless the locations are written to.”