皇上,还记得我吗?我就是1999年那个Linux伊甸园啊-----24小时滚动更新开源资讯,全年无休!

‌分支目标重用(BTR):针对即时编译器的新型Spectre V2攻击‌

距离上一批Spectre系列漏洞公开已经过去很久,而今天这一局面被打破。针对JIT(即时)编译器的新型Spectre V2攻击——分支目标重用(BTR)的保密期现已正式解除。

VUSec实验室的安全研究人员今日正式公布BTR漏洞,这是一种面向JIT引擎的Spectre V2变种攻击,影响搭载BPF的Linux内核、Oracle GraalVM,以及火狐浏览器的Mozilla SpiderMonkey JavaScript引擎。

BTR的核心原理是在JIT编译器未主动失效过时的间接分支预测条目时,形成推测执行场景下的释放后利用原语。VUSec团队开发的端到端利用代码,可在现代Intel CPU上绕过所有已启用的Spectre缓解机制,实现任意内存数据泄露。VUSec团队评估的所有处理器均受BTR漏洞影响,覆盖Intel、AMD、Arm全系列硬件。

‌分支目标重用(BTR):针对即时编译器的新型Spectre V2攻击‌

硬件厂商均建议沿用现有成熟的缓解机制。该漏洞在7月被私下披露后,Linux内核就已合入相关补丁:在BPF JIT内存分配时启用间接分支预测屏障(IBPB)刷新机制,同时在BPF内核代码中新增针对JIT喷溅攻击的加固逻辑。我在7月就曾报道过Linux 7.2-rc2版本中针对BPF代码的JIT喷溅攻击加固变更。因此本次漏洞公开后没有推出新的Linux内核缓解方案,相关BPF加固补丁早在7月就已进入主线内核,且已反向移植到所有稳定版内核分支。

针对Oracle GraalVM,官方采用JIT代码缓存地址随机化方案来阻碍BTR攻击利用。Mozilla方面表示已评估过基于IBPB的SpiderMonkey缓解方案,但最终优先推进站点隔离能力的相关开发工作。

想要了解BTR漏洞更多细节的用户,可以前往VUSec.net官方站点查阅完整研究报告。

转自 Branch Target Reuse, BTR: New Spectre V2 Attack Targeting JIT Compilers – Phoronix