AMD Zen CPU皆中招,新型Inception攻击能从中泄露敏感数据

2023年08月10日

苏黎世联邦理工学院的研究人员发现了一种新型瞬态执行攻击,能在所有型号的 AMD Zen CPU上执行特定命令并泄露敏感数据。

瞬态执行攻击利用了CPU上的推测执行机制,该机制旨在让CPU处理比较费时的任务时预先设置下一步操作或结果,以此提高CPU性能。但问题在于这可能会留下可供攻击者观察或分析的痕迹,以检索本应受到保护的有价值数据。

研究人员将一种名为“幻影推测”的旧漏洞(CVE-2022-23825)与一种名为“瞬态执行训练”(TTE) 的新瞬态执行攻击相结合,创建了一种更强大的“初始” 攻击。“幻影推测”允许攻击者触发错误预测,在任意 XOR 指令处创建推测执行周期(瞬态窗口);TTE 则是通过向分支预测器注入新的预测来操纵未来的错误预测,以此来创建可利用的推测执行。

该攻击所能利用的漏洞已被追踪为CVE-2023-20569,允许攻击者使CPU相信XOR指令(简单的二进制运算)是递归调用指令,进而导致攻击者控制的目标地址溢出返回堆栈缓冲区,从而允许攻击者从任何 AMD Zen CPU 上运行的非特权进程中泄露任意数据。

640 (2).jpg

Inception逻辑图

通过此种 Inception攻击实现的数据泄露速率为每秒39 字节,窃取 16 个字符的密码大约需要半秒,窃取 RSA 密钥需要 6.5 秒。

如何防止 Inception 攻击?

研究人员表示,所有基于 AMD Zen Ryzen EPYC CPU都容易受到 Phantom Inception 的攻击。

尽管研究人员创建的概念验证旨在 Linux 上执行,但这些攻击可能适用于任何使用AMD CPU 的操作系统,因为这是一个硬件缺陷,而不是软件缺陷。

缓解这一问题的策略是在不信任上下文之间切换时,完全刷新分支预测器状态,但在较老的 Zen 1(+) Zen 2 CPU 上会带来 93.1% 216.9% 的性能开销。对于 Zen 3 Zen 4 CPU,虽然最初缺乏对此缓解策略的足够硬件支持,但 AMD 此后发布了微代码更新以启用此功能,建议基于 Zen AMD 处理器的用户安装最新的微代码更新。

此外,AMD最新表示,Inception只能在本地被利用,例如通过下载恶意软件,并建议客户采用安全最佳实践,包括运行最新的软件和恶意软件检测工具。目前AMD 尚未发现研究环境之外对Inception有任何利用。

 


江苏国骏信息科技有限公司 苏ICP备17037372号-2 电话:400-6776-989; 0516-83887908 邮箱:manager@jsgjxx.com