Loading...

Breaking KASLR on mobile devices without any use of cache memory

Seddigh, M ; Sharif University of Technology | 2022

105 Viewed
  1. Type of Document: Article
  2. DOI: 10.1145/3560834.3563823
  3. Publisher: Association for Computing Machinery, Inc , 2022
  4. Abstract:
  5. Microarchitectural attacks utilize the performance optimization constructs that have been studied over decades in computer architecture research and show the vulnerability of such optimizations in a realistic framework. One such highly performance driven vulnerable construct is speculative execution. In this paper, we focus on the problem of breaking the kernel address-space layout randomization (KASLR) on modern mobile devices without using cache memory as a medium of observation. However, there are some challenges to breaking KASLR on ARM CPUs. The first challenge is that eviction strategies on ARM CPUs are slow, and the microarchitectural attacks exploiting the cache as a covert channel cannot be implemented on modern ARM CPUs. The second challenge is that non-canonical addresses are stored in the store buffer, although they are invalid. As a result, previous microarchitectural attacks distinguish such addresses as valid kernel addresses erroneously. In this paper, we focus on these challenges to close current gaps in the implementation of recent attacks against modern CPUs. We show how a Translation Look-aside Buffer (TLB) can be used to circumvent the cache memory as a covert channel in order to attack ASLR on both ARM and Intel CPUs. To the best of our knowledge, we are the first to break KASLR on ARM-based Android and iOS mobile devices. Furthermore, our attacks can be performed in JavaScript to break KASLR of the browser without the need for an Evict+Reload operation, which consumes a lot of time. The results of our attacks show that the attacker can distinguish whether or not the virtual address is valid in less than 0.0417 seconds and 0.0488 seconds on Android and iOS mobile devices, respectively. © 2022 ACM
  6. Keywords:
  7. kaslr ; non-canonical addresses ; Android (operating system) ; ARM processors ; Program processors ; Virtual addresses ; Address space layout randomizations ; Architecture research ; Breakings ; Covert channels ; Non-canonical address ; Optimisations ; Performance optimizations ; Performance-driven ; Speculative execution ; Cache memory
  8. Source: 6th Workshop on Attacks and Solutions in Hardware Security, ASHES 2022, co-located with the ACM Conference on Computer and Communications Security, CCS 2022, 11 November 2022 ; 2022 , Pages 45-54 ; 9781450398848 (ISBN)
  9. URL: https://dl.acm.org/doi/abs/10.1145/3560834.3563823