In 2014, researchers with Carnegie Mellon University and Intel discovered a potential attack against computer memory, one that attacked the electrical properties of the hardware rather than attacking a weakness in software. The attack, colloquially known as Rowhammer, works against the properties of modern computer memory, specifically the layout of memory spaces in rows.
A Rowhammer attack accesses an address or group of adjacent addresses in memory over and over, perhaps hundreds or thousands of times in a short period; and the resultant electrical charge build-up can then toggle the bits of the memory in the next row over. In short, by reading and writing the memory to which a Rowhammer program should have access, the result is that it can alter the contents of memory where it should not.
For a while this seemed like a curiosity or limited to very controlled circumstances. In 2015, Google’s Project Zero published information on two Rowhammer-related vulnerabilities that would allow an attacker with only limited privileges on the system to obtain privileges to the core of the operating system (the kernel). While these were not purely theoretical, they required fairly significant skill and knowledge to actualize, and did require local access to the system in question.
In late August, researchers found another Rowhammer-based attack that allowed an attacker in a virtual machine to attack another virtual machine running on the same hypervisor. Called Flip Feng Shui, this attack relies on a virtualization technique called “deduplication”, where the hypervisor creates a single copy of certain data or resources in memory that several virtual instances would share. The attack applies the Rowhammer concept to force sensitive data like cryptographic keys into the deduplication memory space, and then alter that data to something the attacker already knows.
In the specific cases outlined in the research, the attackers replaced the target virtual machine’s public keys used for remote access and to verify software updates. While a public key typically doesn’t give any clues to the private key, in this case, the attackers replaced the public key with a weak enough substitute that they could factor the private key using already known cryptographic exploits. This allowed the attackers to access the target virtual machine using SSH or through malicious software updates that the target would regardas legitimate.
Despite the seemingly low probability of the necessary events lining up to make this attack work, the attack is both very probable and entirely practical. Furthermore, the fundamental correction to this problem lies in the hardware rather than the software. That said, the primary means of mitigating this particular issue lies in disabling deduplication functions in the virtualization software. Currently, major cloud service providers, such as Amazon Web Services, claim they do not use deduplication and are not susceptible to this particular attack. However, Flip Feng Shui is merely a manifestation of the Rowhammer attack type, and researchers and attackers alike will continue to develop new ways to use this versatile attack concept.