skip to main content
10.1145/2757667.2757672acmconferencesArticle/Chapter ViewAbstractPublication PagessystorConference Proceedingsconference-collections
research-article

Disruptive prefetching: impact on side-channel attacks and cache designs

Published:26 May 2015Publication History

ABSTRACT

Caches are integral parts in modern computers; they leverage the memory access patterns of a program to mitigate the gap between the fast processors and slow memory components.

Unfortunately, the behavior of caches can be exploited by attackers to infer the program's memory access patterns, by carrying out cache-based side-channel attacks, which can leak critical information.

Secure caches that were proposed employ cache partitioning or randomized memory-to-cache mapping techniques to prevent these attacks. Such techniques may add to the complexity of cache designs.

In this work, we suggest the use of specialized prefetching algorithms for the purpose of protecting from cache-based side-channel attacks. Our prefetchers can be combined with conventional set associative cache designs, are simple to employ, and require low incremental hardware overhead costs, if the base prefetching scheme is already employed.

We integrated our prefetching policies with commonly used GHB and stride prefetching schemes, and compared their performance with the standard implementations of those schemes, on both conventional and secure cache designs. More specifically, our results show that the use of our secure prefetching policy delivers original prefetching performance when integrated with a stride prefetcher. Finally, we demonstrate how a disruptive prefetching scheme can protect the cache from an access based side-channel attack.

References

  1. ARM (2010). Cortex-A8 Technical Reference Manual. http://infocenter.arm.com/help/topic/com.arm.doc.subset.cortexa.a8/.Google ScholarGoogle Scholar
  2. Bernstein, D. J. (2005). Cache-timing attacks on aes.Google ScholarGoogle Scholar
  3. Binkert, N., Beckmann, B., Black, G., Reinhardt, S. K., Saidi, A., Basu, A., Hestness, J., Hower, D. R., Krishna, T., Sardashti, S., Sen, R., Sewell, K., Shoaib, M., Vaish, N., Hill, M. D., and Wood, D. A. (2011). The gem5 simulator. Computer Architecture News, 39(2): 1--7. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Bonneau, J. and Mironov, I. (2006). Cache-Collision Timing Attacks Against AES. Cryptographic Hardware and Embedded Systems, 8: 201--215. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Daemen, J. and Rijmen, V. (1999). Aes proposal: Rijndael. NIST Web page.Google ScholarGoogle Scholar
  6. Doweck, J. (2006). White paper: Inside microarchitecture and smart memory access.Google ScholarGoogle Scholar
  7. Fu, J. W. C., Patel, J. H., and Janssens, B. L. (1992). Stride directed prefetching in scalar processors. In Intl. Symp. on Microarchitecture (MICRO). Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Jaleel, A. (2009). Memory characterization of workloads using instrumentation-driven simulation.Google ScholarGoogle Scholar
  9. Jana, S. and Shmatikov, V. (2012). Memento: Learning secrets from process footprints. In Security and Privacy (SP), 2012 IEEE Symposium on, pages 143--157. IEEE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Kim, T., Peinado, M., and Mainar-Ruiz, G. (2012). Stealthmem: System-level protection against cache-based side channel attacks in the cloud. In USENIX Security symposium, pages 189--204. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Lee, R. B. (2013). Security basics for computer architects. Synthesis Lectures on Computer Architecture, 8(4): 1--111.Google ScholarGoogle ScholarCross RefCross Ref
  12. Liu, F. and Lee, R. (2014). Random fill cache architecture. In Microarchitecture (MICRO), 2014 47th Annual IEEE/ACM International Symposium on, pages 203--215. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Liu, F. and Lee, R. B. (2013). Security testing of a secure cache design. In Proceedings of the 2Nd International Workshop on Hardware and Architectural Support for Security and Privacy, HASP '13, pages 3:1--3:8, New York, NY, USA. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Nesbit, K. J. and Smith, J. E. (2004). Data cache prefetching using a global history buffer. In Symp. on High-Performance Computer Architecture (HPCA). Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Osvik, D. A., Shamir, A., and Tromer, E. (2006). Cache attacks and countermeasures: the case of aes. In Topics in Cryptology--CT-RSA 2006, pages 1--20. Springer. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Page, D. (2002). Theoretical use of cache memory as a cryptanalytic side-channel. IACR Cryptology ePrint Archive, 2002: 169.Google ScholarGoogle Scholar
  17. Paoloni, G. (2010). How to benchmark code execution times on intel ia-32 and ia-64 instruction set architectures. http://download.intel.com/embedded/software/IA/324264.pdf. {Online; accessed 3-March-2013}.Google ScholarGoogle Scholar
  18. Percival, C. (2005). Cache missing for fun and profit.Google ScholarGoogle Scholar
  19. Ristenpart, T., Tromer, E., Shacham, H., and Savage, S. (2009). Hey, you, get off of my cloud: exploring information leakage in third-party compute clouds. In Proceedings of the 16th ACM conference on Computer and communications security, pages 199--212. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Standard Performance Evaluation Corporation (2006). SPEC CPU2006. http://www.spec.org/cpu2006.Google ScholarGoogle Scholar
  21. Tromer, E., Osvik, D. A., and Shamir, A. (2010). Efficient cache attacks on aes, and countermeasures. J. Cryptol., 23(2): 37--71. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Wang, Z. and Lee, R. B. (2007). New cache designs for thwarting software cache-based side channel attacks. In ACM SIGARCH Computer Architecture News, volume 35, pages 494--505. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Wang, Z. and Lee, R. B. (2008). A novel cache architecture with enhanced performance and security. In Microarchitecture, 2008. MICRO-41. 2008 41st IEEE/ACM International Symposium on, pages 83--93. IEEE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Wu, Z., Xu, Z., andWang, H. (2012). Whispers in the hyper-space: High-speed covert channel attacks in the cloud. In USENIX Security Symposium, pages 159--173. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Wulf, W. A. and McKee, S. A. (1995). Hitting the memory wall: Implications of the obvious. SIGARCH Comput. Archit. News, 23(1): 20--24. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Yarom, Y. and Falkner, K. E. (2013). Flush+ reload: a high resolution, low noise, l3 cache side-channel attack. IACR Cryptology ePrint Archive, 2013: 448.Google ScholarGoogle Scholar
  27. Zhang, Y. and Reiter, M. K. (2013). Düppel: Retrofitting commodity operating systems to mitigate cache side channels in the cloud. In Proceedings of the 2013 ACM SIGSAC conference on Computer & communications security, pages 827--838. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Disruptive prefetching: impact on side-channel attacks and cache designs

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        SYSTOR '15: Proceedings of the 8th ACM International Systems and Storage Conference
        May 2015
        183 pages
        ISBN:9781450336079
        DOI:10.1145/2757667

        Copyright © 2015 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 26 May 2015

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

        Acceptance Rates

        Overall Acceptance Rate94of285submissions,33%

        Upcoming Conference

        SYSTOR '24
        The 17th ACM International Systems and Storage Conference
        September 23 - 25, 2024
        Tel-Aviv , Israel

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader