Hardware Security: Advanced Topics and Trends

Which correctly describes the characteristics of the vulnerability called MDS (Microarchitectural Data Sampling), published in 2019?

  1. AThe branch predictor is deliberately mistrained so that the victim program speculatively reads array elements outside the bounds, from which secrets are extracted
  2. BThe same DRAM row is activated many times in a short period, draining charge from cells in the neighbouring rows and flipping bits in data of other processes or the kernel
  3. CData of other processing held temporarily in buffers inside the CPU, such as line fill buffers, are passed to instructions that execute only transiently
Show answer and explanation

Answer: C. Data of other processing held temporarily in buffers inside the CPU, such as line fill buffers, are passed to instructions that execute only transiently

MDS is a family of transient execution attacks published under names such as RIDL, Fallout and ZombieLoad. On affected CPUs, when a load was cancelled by an exception or similar, data of another process or the kernel left not in the cache but in internal buffers could be passed to subsequent instructions executed transiently, and could be extracted through a cache side channel. The attacker cannot choose the address read but can collect secrets by observing repeatedly. As a countermeasure, microcode updates added a function that clears the internal buffers when switching privilege levels, but another thread using the same core simultaneously through SMT can observe without any switch, so not sharing cores with untrusted parties also became necessary.

  • A. This describes Spectre (the bounds-check bypass variant).
  • B. This describes Rowhammer.
  • C. Correct. Its distinctive feature is that data in internal buffers, not in the cache, leak.
Practice this topic Back to topic

Books on Hardware Security: Advanced Topics and Trends Ad

As an Amazon Associate I earn from qualifying purchases.

More Hardware Security: Advanced Topics and Trends questions

  1. Which correctly pairs the descriptions of retpoline and IBRS, countermeasures against the Spectre variant that abuses indirect branch prediction (branch target injection)?
  2. A task took 10 seconds before mitigations for speculative execution were applied and made 5 million system calls during that time. Assume that the mitigations increase the processing time per system call from 0.4 µs to 0.6 µs and leave the time of everything else unchanged. By what proportion does the total time of the task increase?
  3. Lattice-based post-quantum cryptography repeatedly multiplies polynomials of degree n = 256. If the naive method of multiplying every pair of coefficients needs about n² multiplications and the method using the number-theoretic transform (NTT) needs about n log₂ n, which is closest to the factor by which the NTT reduces the number of multiplications?
  4. The public key of ML-KEM-768 is 1,184 bytes and its ciphertext 1,088 bytes, while the public value of the elliptic-curve key exchange X25519 is 32 bytes. How many times larger than the X25519 public value is the ML-KEM-768 public key?
  5. In ML-KEM decapsulation, the ciphertext is rebuilt from the result of decrypting the received ciphertext with the private key and compared with the received ciphertext. Which is a correct implementation precaution for this part?