Visible to the public Return-Oriented Flush-Reload Side Channels on ARM and Their Implications for Android Devices

TitleReturn-Oriented Flush-Reload Side Channels on ARM and Their Implications for Android Devices
Publication TypeConference Paper
Year of Publication2016
AuthorsZhang, Xiaokuan, Xiao, Yuan, Zhang, Yinqian
Conference NameProceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security
Date PublishedOctober 2016
PublisherACM
Conference LocationNew York, NY, USA
ISBN Number978-1-4503-4139-4
Keywordsattack vectors, cache side channels, composability, flush-reload, Metrics, pubcrawl, Resiliency, rop attacks, Scalability
Abstract

Cache side-channel attacks have been extensively studied on x86 architectures, but much less so on ARM processors. The technical challenges to conduct side-channel attacks on ARM, presumably, stem from the poorly documented ARM cache implementations, such as cache coherence protocols and cache flush operations, and also the lack of understanding of how different cache implementations will affect side-channel attacks. This paper presents a systematic exploration of vectors for flush-reload attacks on ARM processors. flush-reload attacks are among the most well-known cache side-channel attacks on x86. It has been shown in previous work that they are capable of exfiltrating sensitive information with high fidelity. We demonstrate in this work a novel construction of flush-reload side channels on last-level caches of ARM processors, which, particularly, exploits return-oriented programming techniques to reload instructions. We also demonstrate several attacks on Android OS (e.g., detecting hardware events and tracing software execution paths) to highlight the implications of such attacks for Android devices.

URLhttp://doi.acm.org/10.1145/2976749.2978360
DOI10.1145/2976749.2978360
Citation Keyzhang_return-oriented_2016