Hardware Security

What is the main reason cache-based side-channel attacks work?

  1. ACaches can be shared between processes, so which data another process used can be observed as differences in one's own access speed (hit or miss)
  2. BAnyone can directly read the contents of a cache
  3. CCaches save data to disk unencrypted
Show answer and explanation

Answer: A. Caches can be shared between processes, so which data another process used can be observed as differences in one's own access speed (hit or miss)

Cached data is read fast and uncached data slowly. If an attacker fills part of a shared cache with its own data and later times reads of it, it can tell whether another process used those locations and evicted its data. If cryptographic code reads different table locations depending on the key, key information leaks this way.

  • A. Correct. Access time becomes a trace.
  • B. The contents are not read directly; they are inferred from timing.
  • C. Caches do not save to disk.
Practice this topic Back to topic

More Hardware Security questions

  1. What is the principle behind the speculative execution vulnerability known as Spectre?
  2. Why does information still leak in attacks like Spectre even though speculatively executed instructions are rolled back?
  3. What is the principle of the vulnerability called Meltdown, which affected some CPUs?
  4. What is the idea behind KPTI (kernel page-table isolation), introduced as a software countermeasure to Meltdown?
  5. Which is NOT used as a countermeasure to speculative-execution vulnerabilities such as Spectre?