导语:新瞬态执行攻击Inception可从所有AMD Zen CPU泄露敏感数据。
新瞬态执行攻击Inception可从所有AMD Zen CPU泄露敏感数据。
苏黎世联邦理工学院(ETH Zurich)研究人员发现一种新的瞬态执行攻击——'Inception'攻击。攻击可从攻击者控制的地址发起推测执行,引发信息泄露。漏洞CVE编号CVE-2023-20569,影响所有AMD Zen CPU。
瞬态执行攻击利用了现代处理器的推测执行特征,通过猜测接下来要执行的内容来提高CPU的性能。如果猜测正确,CPU就无需等到操作执行结束,如果猜测失败,只需要回滚并继续执行操作即可。猜测执行存在的问题是会留下痕迹,攻击者可以查看和分析这些有价值的数据用于攻击活动。
苏黎世联邦理工学院研究人员融合了'Phantom speculation' (CVE-2022-23825)和一种新的瞬态执行攻击(TTE,Training in Transient Execution)创建了更加强大的inception攻击。'Phantom speculation'允许攻击者在无错误预测源处无需任何分支就可以触发错误预测,比如在任意异或XOR指令创建推测执行周期(瞬态窗口)。TTE是一种对未来错误预测的操纵,通过注入新的预测到预测分支来创建可利用的推测执行。Inception攻击融合了以上两种概念,使得被攻击的CPU认为XOR指令是一个递归调用指令。Inception攻击会用攻击者控制的目标地址来覆写返回栈缓存,攻击者可从AMD Zen CPU运行的非特权进程泄露任意数据。
图 Inception攻击逻辑
Inception攻击可实现39字节/秒的数据泄露速率,泄露一个16字符的密码只需要0.5秒,泄露一个RSA密钥只需要6.5秒。Inception攻击可以绕过现有推测执行攻击的修复措施,如Spectre和瞬时控制流劫持等。
Inception攻击是针对AMD CPU的,所以是由AMD CPU的设备都受到Inception和 Phantom攻击的影响。研究人员分析发现Phantom也会影响Intel CPU,此外部分Intel CPU也受到特定TTE变种的影响。
图 特定TTE变种对CPU的影响
研究人员开发的PoC运行在Linux系统上,但Inception 和Phantom攻击是针对的是硬件漏洞。因此,任何受影响的CPU上运行的操作系统都会受到影响。
AMD建议使用Zen 3和Zen 4 CPU架构的用户使用µcode补丁或BIOS更新,对于Zen和Zen 2 CPU架构用户无需使用µcode补丁或BIOS更新。此外,AMD还计划发布更新的AGESA。
相关研究成果已被安全顶会Usenix security 2023录用,论文下载地址:https://comsec.ethz.ch/wp-content/files/inception_sec23.pdf
更多参见:https://comsec.ethz.ch/research/microarch/inception/
本文翻译自:https://comsec.ethz.ch/research/microarch/inception/如若转载,请注明原文地址