Affiliation:
1. Oregon State University, School of Electrical Engineering and Computer Science
Abstract
Caching is an important technique to speed-up execution, and its implementation and use cases vary. When applied specifically to the memory hierarchy, caching is used to speed up memory accesses and memory translations. Different cache implementations are considered microarchitectural secrets and oftentimes change between generations. The integration of caches in hardware greatly influences security policy enforcement in the platform since caches maintain copies of code and data and their security properties. Examples of attacks due to the existence of caches are side-channels against cryptographic software, recent speculative execution abuses to leak secret data, and usages of cache-based manipulations (e.g., forcing cache splits/incoherence) to hide from security software detection. This survey examines the security issues due to different cache usages in a microarchitecture. The survey also explains the most complicated caching features and their impact on the security of the platform in different scenarios.
Publisher
Association for Computing Machinery (ACM)
Subject
General Computer Science,Theoretical Computer Science
Reference83 articles.
1. On the power of simple branch prediction analysis
2. Predicting Secret Keys Via Branch Prediction
3. Inc. Advanced Micro Devices. 2021. Transient Execution of Non-canonical Accesses (CVE-2020-12965). Retrieved January 25 2022 from https://www.amd.com/en/corporate/product-security/bulletin/amd-sb-1010.
4. Port Contention for Fun and Profit;Aldaya Alejandro Cabrera;Cryptology ePrint Archive, Report 2018/1060,2018
5. SMoTherSpectre
Cited by
3 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献