Introducing a new timing attack on the ARM processor and its practical implementation on the Raspberrypi3 board

Document Type : Original Article

Authors

Shahid beheshti of university

Abstract

An important category of the side-channel attacks takes advantage of the fact that cache leads to temporal changes in the execution of encryption algorithms and thus information leakage. Although side-channel attacks based on high cache memory are among the most widely used side-channel attacks, they have been less studied than other side-channel attacks. Accordingly, extensive research has been conducted by the cryptographic community in the area of ​​side-channel attacks based on cache memory.The focus of research has mainly been on the security of encryption algorithms implemented by Intel and Pentium processors, which due to the different cache structure of different processors, cannot be extended to other commonly used processors such as ARM. In response to this challenge, new research is focusing on cache-based side-channel attacks on various mobile processors and other applications including ARM processors. The different cache structure and lack of support for some of the commands needed to execute cache attacks have made it difficult to execute these attacks on ARM processors. In this paper, we first investigate the cache-timing attack using a collision event on one of the ARM processors. In this attack, the attacker only needs to measure the timing of the encryption, and unlike the access-driven attacks, the attacker does not need access to the victim's cache. We also implemented the attack using an industrial automation board called Raspberrypi3, which runs the router operating system, the results of which show the accuracy of the attack.

Keywords


[1]       D. J. Bernstein, “Cache-timing attacks onAES,” 2005.
[2]          J. Bonneau and I. Mironov, “Cache-collision timing attacks against AES,” In International Workshop on Cryptographic Hardware and Embedded Systems, Springer, pp. 201-215, 2006.##
[3]          E. Tromer, D. A. Osvik, and A. Shamir, “Efficient cache attacks on AES, and countermeasures,” Journal of Cryptology, vol. 23, no. 1, pp. 37-71, 2010.##
[4]          Y. Yarom and K. Falkner, “FLUSH+ RELOAD: A High Resolution, Low Noise, L3 Cache Side-Channel Attack,” In USENIX Security Symposium, pp. 719-732, 2014.##
[5]          D. Gruss, R. Spreitzer, and S. Mangard, “Cache Template Attacks: Automating Attacks on Inclusive     Last-Level Caches,” In USENIX Security Symposium, pp.   897-912, 2015.##
[6]          D. Gruss, C. Maurice, K. Wagner, and S. Mangard, “Flush+ Flush: a fast and stealthy cache attack,” In International Conference on Detection of Intrusions and Malware, and Vulnerability Assessment, Springer, pp.  279-299, 2016.##
[7]          A. Bogdanov, T. Eisenbarth, C. Paar, and M. Wienecke, “Differential cache-collision timing attacks on AES with applications to embedded CPUs,” In Cryptographers’ Track at the RSA Conference, Springer, pp. 235-251, 2010.##
[8]          M. Weiß, B. Heinz, and F. Stumpf, “A cache timing attack on AES in virtualization environments,” In International Conference on Financial Cryptography and Data Security, Springer, pp. 314-328, 2012.##
[9]          R. Spreitzer and T. Plos, “On the Applicability of Time-Driven Cache Attacks on Mobile Devices (Extended Version⋆),” 2013.## 
[10]        M. Lipp, D. Gruss, R. Spreitzer, C. Maurice, and S. Mangard, “ARMageddon: Cache Attacks on Mobile Devices,” In USENIX Security Symposium, pp. 549-564, 2016.##
[11]  D. Gruss, C. Maurice, and S. Mangard, “Rowhammer. js: A remote software-induced fault attack in javascript,” In International Conference on Detection of Intrusions and Malware, and Vulnerability Assessment, Springer, pp.  300-321, 2016.##
[12]      M. Lipp, M .Schwarz, D.Gruss, T. Prescher, W. Haas, S. Mangard, P. Kocher, D. Genkin, Y. Yarom, M. Hamburg, Meltdown, arXiv, 2018.##
  • Receive Date: 10 September 2018
  • Revise Date: 14 September 2019
  • Accept Date: 19 November 2019
  • Publish Date: 21 May 2020