Paper 2016/596

Cache Attacks Enable Bulk Key Recovery on the Cloud

Mehmet S. Inci, Berk Gulmezoglu, Gorka Irazoqui, Thomas Eisenbarth, and Berk Sunar


Cloud services keep gaining popularity despite the security concerns. While non-sensitive data is easily trusted to cloud, security critical data and applications are not. The main concern with the cloud is the shared resources like the CPU, memory and even the network adapter that provide subtle side-channels to malicious parties. We argue that these side-channels indeed leak fine grained, sensitive information and enable key recovery attacks on the cloud. Even further, as a quick scan in one of the Amazon EC2 regions shows, high percentage -55\%- of users run outdated, leakage prone libraries leaving them vulnerable to mass surveillance. The most commonly exploited leakage in the shared resource systems stem from the cache and the memory. High resolution and the stability of these channels allow the attacker to extract fine grained information. In this work, we employ the \PnP\ attack to retrieve an RSA secret key from a co-located instance. To speed up the attack, we reverse engineer the cache slice selection algorithm for the Intel Xeon E5-2670 v2 that is used in our cloud instances. Finally we employ noise reduction to deduce the RSA private key from the monitored traces. By processing the noisy data we obtain the complete 2048-bit RSA key used during the decryption.

Available format(s)
Publication info
Published by the IACR in CHES 2016
Amazon EC2Co-location DetectionRSA key recoveryVirtualizationPrime and Probe
Contact author(s)
msinci @ wpi edu
bgulmezoglu @ wpi edu
girazoki @ wpi edu
teisenbarth @ wpi edu
sunar @ wpi edu
2016-06-07: received
Short URL
Creative Commons Attribution


      author = {Mehmet S.  Inci and Berk Gulmezoglu and Gorka Irazoqui and Thomas Eisenbarth and Berk Sunar},
      title = {Cache Attacks Enable Bulk Key Recovery on the Cloud},
      howpublished = {Cryptology ePrint Archive, Paper 2016/596},
      year = {2016},
      note = {\url{}},
      url = {}
Note: In order to protect the privacy of readers, does not use cookies or embedded third party content.