0

我试图弄清楚两个缓存侧通道攻击之间有什么区别:Prime 和 Probe vs Evict 和 Reload。看起来这两种攻击是相同的——攻击者通过用自己的数据填充缓存集来驱逐数据,然后他定期测试是否存在缓存未命中或命中,这使他能够推断出已经完成的内存访问模式由受害者。我确实找到了 Black Hat Asia 2017 的演讲,其中他们解释了 Prime 和 Probe 不需要共享内存,所以我的假设是攻击都是相同的,但 Prime 和 Probe 一词指的是 Evict and Reload on unshared记忆 ?

4

1 回答 1

1

Evict+Reload 在中间使用共享内存(通常是共享库)。攻击者首先使用驱逐集从缓存集中驱逐共享内存。如果受害者现在访问共享内存,它将覆盖攻击者在缓存中的数据。攻击者现在还访问共享内存并测量需要多长时间。如果速度很快,受害者访问了其间的共享内存,如果速度很慢,他没有。

现在对于 Prime+Probe,攻击者首先用他的“驱逐集”来填充/填充缓存集。受害者现在可以访问映射到同一缓存集的内存,从而驱逐一些攻击者的数据。现在攻击者访问他所有的内存并测量时间。如果速度很快,受害者就不会访问内存,如果速度很慢,他会访问内存(因为我们有缓存未命中)。

所以本质上这两种攻击背后的想法是相似的,但 Prime+Probe 不需要共享内存,因此工作方式略有不同。

于 2021-03-13T08:16:02.457 回答