ComputingComputer EngineeringComputer ScienceComputer SecurityHardware SecurityOperating SystemsDenial Of Service VulnerabilitiesExploit DevelopmentFault Injection AttacksOperating System SecurityOperating System VulnerabilitiesPrivilege Escalation VulnerabilitiesAttack SuccessCloud Hypervisor SecurityDenial Of ServiceMemory Corruption ExploitsPrivilege Escalation ExploitsRowhammer AttacksShell InjectionStatistical Sampling Design
This paper presents a systematic methodology to identify and validate security attacks that exploit user influenceable hardware faults (i.e., rowhammer errors). We break down rowhammer attack procedures into nine generalized steps where some steps are designed to increase the attack success probabilities. Our framework can perform those nine operations (e.g., pressuring system memory and spraying landing pages) as well as inject rowhammer errors which are basically modeled as ≥3-bit errors. When one of the injected errors is activated, such can cause control or data flow divergences which can then be caught by a prepared landing page and thus lead to a successful attack. Our experiments conducted against a guest operating system of a typical cloud hypervisor identified multiple reproducible targets for privilege escalation, shell injection, memory and disk corruption, and advanced denial-of-service attacks. Because the presented rowhammer attack injection (RAI) methodology uses error injection and thus statistical sampling, RAI can quantitatively evaluate the modeled rowhammer attack success probabilities of any given target software states.
13
Flipping bits in memory without accessing them
Yoongu Kim, Ross Daly, Jeremie Kim et al. · ACM SIGARCH Computer Architecture News · 2014 · 907 citations
Non-control-data attacks are realistic threats
Shuo Chen, Jun Xu, Emre C. Sezer et al. · USENIX Security Symposium · 2005 · 475 citations
Using memory errors to attack a virtual machine
Sudhakar Govindavajhala, Andrew W. Appel · 2004 · 194 citations