BackCache: Mitigating Contention-Based Cache Timing Attacks by Hiding Cache Line Evictions

by   Quancheng Wang, et al.

Caches are used to reduce the speed differential between the CPU and memory to improve the performance of modern processors. However, attackers can use contention-based cache timing attacks to steal sensitive information from victim processes through carefully designed cache eviction sets. And L1 data cache attacks are widely exploited and pose a significant privacy and confidentiality threat. Existing hardware-based countermeasures mainly focus on cache partitioning, randomization, and cache line flushing, which unfortunately either incur high overhead or can be circumvented by sophisticated attacks. In this paper, we propose a novel hardware-software co-design called BackCache with the idea of always achieving cache hits instead of cache misses to mitigate contention-based cache timing attacks on the L1 data cache. BackCache places the evicted cache lines from the L1 data cache into a fully-associative backup cache to hide the evictions. To improve the security of BackCache, we introduce a randomly used replacement policy (RURP) and a dynamic backup cache resizing mechanism. We also present a theoretical security analysis to demonstrate the effectiveness of BackCache. Our evaluation on the gem5 simulator shows that BackCache can degrade the performance by 1.33 7.59


page 1

page 10


Fast Selective Flushing to Mitigate Contention-based Cache Timing Attacks

Caches are widely used to improve performance in modern processors. By c...

Lookout for Zombies: Mitigating Flush+Reload Attack on Shared Caches by Monitoring Invalidated Lines

OS-based page sharing is a commonly used optimization in modern systems ...

Proficient Pair of Replacement Algorithms on L1 and L2 Cache for Merge Sort

Memory hierarchy is used to compete the processors speed. Cache memory i...

Fast Bitmap Fit: A CPU Cache Line friendly memory allocator for single object allocations

Applications making excessive use of single-object based data structures...

GI Software with fewer Data Cache Misses

By their very name caches are often overlooked and yet play a vital role...

Cache Contention on Multicore Systems: An Ontology-based Approach

Multicore processors have proved to be the right choice for both desktop...

Exploiting Data Skew for Improved Query Performance

Analytic queries enable sophisticated large-scale data analysis within m...

Please sign up or login with your details

Forgot password? Click here to reset