新的“Retbleed”推测执行攻击影响 AMD 和 Intel CPU
2022-7-14 22:24:29 Author: 合一安全(查看原文) 阅读量:4 收藏

安全研究人员发现了另一个影响许多旧 AMD 和 Intel 微处理器的漏洞,该漏洞可能绕过当前的防御并导致基于 Spectre 的推测执行攻击。

苏黎世联邦理工学院的研究人员 Johannes Wikner和 Kaveh Razavi 将这些问题称为Retbleed,这些问题被跟踪为 CVE-2022-29900 (AMD) 和 CVE-2022-29901 (Intel),芯片制造商发布 软件 缓解措施作为协调披露过程的一部分。

Retbleed是利用分支目标注入来泄漏信息的推测执行攻击系列的新成员,我们称之为 Spectre-BTI(CVE-2017-5715 或 Spectre-V2)。该攻击利用推测执行优化技术的副作用,通过时序侧通道来欺骗程序访问其内存空间中的任意位置并泄漏私人信息。

推测执行试图通过预测接下来将执行哪条指令,来填充程序的指令流水线以获得性能提升,同时如果猜测结果错误,也会撤消执行结果。Spectre系列攻击正式利用了这一漏洞,这些错误执行的指令(错误预测的结果)必然会在缓存中留下执行痕迹,从而导致流氓程序可以欺骗处理器执行错误的代码路径,和推断与受害者有关的秘密数据。

换句话说,Spectre 是瞬态执行攻击的一个实例,它依靠硬件设计缺陷来“影响”哪些指令序列被推测执行,并从受害者的内存地址空间中泄露加密密钥或密码。虽然已经设计了像Retpoline(又名“return trampoline”)这样的保护措施来防止分支目标注入 (BTI),但 Retbleed 旨在绕过这种对策并实现推测性代码执行。

虽然已经设计了像Retpoline(又名“return trampoline”)这样的保护措施来防止分支目标注入 (BTI),但 Retbleed 旨在绕过这种对策并实现推测性代码执行。

“ Retpolines通过替换间接跳转 [在运行时确定分支目标的分支] 和返回调用来工作,”研究人员解释说。

“Retbleed 旨在劫持内核中的返回指令,以在内核上下文中获得任意推测性代码执行。通过在受害者返回指令处对寄存器和/或内存进行充分控制,攻击者可以泄漏任意内核数据。”

简而言之,核心思想是将返回指令视为用于推测执行的攻击向量,并强制将返回作为间接分支进行预测,从而有效地撤消 Retpoline 提供的保护。

作为新的防线,AMD 引入了所谓的Jmp2Ret,而英特尔建议使用增强的间接分支限制推测 ( eIBRS ) 来解决潜在的漏洞,即使 Retpoline 缓解措施到位。

“Windows 操作系统默认使用 IBRS,因此不需要更新,”英特尔在一份公告中表示,并指出它与 Linux 社区合作,为该缺陷提供可用的软件更新。


往期推荐


基于Docker的渗透测试环境平台

ssrf 攻击redis 未授权几种攻击方式

BurpSuite Pro v2022.6.1


免责声明 

合一安全提供的资源仅供学习,利⽤本公众号合一安全所提供的信息⽽造成的任何直接或者间接的后果及损失,均由使⽤者本⼈负责,公众号合一安全及作者不为此承担任何责任,一旦造成后果请⾃⾏承担责任!合一安全部分内容及图片源自网络转载,版权归作者及授权人所有,若您发现有侵害您的权利,请联系我们进行删除处理。谢谢 !


文章来源: http://mp.weixin.qq.com/s?__biz=Mzg2Mzc0ODA0NQ==&mid=2247486548&idx=1&sn=ceb59778e347c8e3631e7a68406ed43f&chksm=ce72a6f6f9052fe0103d82167fc04ef1936a1630549b9da0dee576c243fbf911529f3a811437#rd
如有侵权请联系:admin#unsafe.sh