首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么是魔戒(S):侧通道攻击及其结果

什么是魔戒(S):侧通道攻击及其结果
EN

Cryptography用户
提问于 2021-03-08 14:22:24
回答 1查看 620关注 0票数 5

最近在USENIX安全2021上发表的一篇题为“

魔戒(S):对CPU片上环网的侧通道攻击是实用的。由RiccardoPaccagnellaLichenroChristopherW.Fletcher著

他们能够使用之前被利用的英特尔CPU的环互连功能。他们声称能提取RSA和EdDSA密钥和键盘中风时间。

  • 这种攻击在高层次上是如何工作的?
  • 对他的攻击有什么缓解措施?
  • 这次袭击的后果是什么?
  • 安全实现是否受到此攻击的影响?

奖金部分:

  • 这种攻击在低层是如何工作的?
EN

回答 1

Cryptography用户

回答已采纳

发布于 2021-03-08 17:47:37

  • 这种攻击在高层是如何工作的?

多核CPU上的资源共享具有成本低、效率高等优点。然而,这是我们多年来看到的攻击点。在高速缓存攻击中,通过缓存操作提取受害者的数据。

针对各种缓存攻击的对策是禁用同步多线程(SMT),显而易见的是在上下文切换期间对缓存进行清理。通过划分最后一级缓存(LLC) (例如Intel CAT)和禁用不同安全域的共享内存,可以防止交叉核心缓存攻击。

即使采用了相应的对策,所提出的攻击也是有效的。此攻击利用环互连上的争用,该连接是支持不同CPU单元之间通信的组件。

这次攻击中最困难的部分是获得关于戒指的信息,因为它没有被很好的记录下来。

L1和L2缓存被称为私有缓存,因为它们对核心是私有的,因此不可能进行交叉解释。由于Nehalem(Nehalem),L3缓存(LLC)被划分为等大小的片,每个核只有一个片。

在英特尔体系结构中,L1、L2和LLC是包容性的,这意味着如果有L1和L2上的数据,那么它也包含在L3中。

上图中的环形总线说明了它的大部分结构.它用于进程内通信,当L1中出现缓存丢失时,L2中的数据必须在环形总线上传输才能到达LLC。

现在跳过低级别的详细信息,攻击者的进程可以通过传输1并使用0空闲来创建争用。通过测量延迟,它们可以从不安全的朴素平方和乘RSA实现中提取密钥。与功率攻击一样,第二个峰值指示位1。这同样适用于EdDSA。

这个新频道的第二面是击键。攻击泄露了击键的时间,这可以用于重建键入的单词,或者更糟的是密码。如本文所述;

  • 对他的攻击有什么缓解措施?

对于密码代码,使用安全实现,特别是恒定时间编程原则。侧通道安全实现不会受到缓存环攻击的当前状态的影响。然而,要做到这一点并不容易,因为Intel CPU在私有缓存和环互连之间执行硬件存储消除(请参阅硬件存储消除)。

对于击键,硬件可以设计基于空间分区和静态调度仲裁策略.此外,可以设计一种基于软件的解决方案,用于定期发送密码.

  • 这次袭击的后果是什么?

它在多核CPU上打开了一个新的侧通道。我原以为聪明的头脑会在很多方面改善这次攻击。请注意,尽管如此,如果您的代码不容易受到缓存攻击,而且它们是定时攻击的,那么我还没有看到有漏洞。

  • 安全实现是否受到此攻击的影响?

目前没有。然而,击键可能是一个大问题。

票数 4
EN
页面原文内容由Cryptography提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://crypto.stackexchange.com/questions/88724

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档