
又一种 Spectre 攻击冒出来了
安全研究人员公布了一种新的 Spectre-v2 攻击,名叫分支目标重用(BTR)。简单说,就是 CPU 里过时的分支预测记录被翻出来,用来从 Linux 系统里偷敏感数据。
这个研究来自阿姆斯特丹自由大学 VUSec 团队和圣安娜高等研究学院。他们盯上的是动态生成代码的环境,比如 JIT 编译器。在 Linux 上,他们重点研究了经典 BPF(cBPF),还搞出了两个端到端的利用工具。
CPU 猜错了,但痕迹还在
现代 CPU 为了跑得快,会猜程序下一步往哪执行。BTR 利用的是:就算原来的代码已经被删掉、内存也被重新用了,那些预测痕迹还赖在处理器里不走。
如果 CPU 跟着一个过时的预测跑,就可能从错误的位置短暂执行新代码。这种推测执行最后会被丢掉,但留下的痕迹能被测量,用来还原本来不该碰的数据。
8 字节 / 秒,偷走 root 密码哈希 ⚡
在 Linux 演示里,研究人员用 cBPF 在现代 Intel 处理器上读任意内存。攻击速度大概每秒 8 字节,成功从 su 进程用的内存里提取了 root 密码哈希。
别慌,这不代表 BTR 能远程偷走 Linux root 密码。攻击前提是攻击者已经能在目标系统上跑非特权代码,而且他们拿到的是密码哈希,不是明文密码。
关了 eBPF 也没用?
有个细节值得注意:禁用非特权 eBPF 并不能消除这个攻击面。Linux 还在用经典 BPF 做 seccomp、socket 过滤这些功能,Docker 和 Chrome 之类的软件也在用。
研究人员还拿 BTR 测试了 Firefox 的 SpiderMonkey 引擎和 Oracle 的 GraalVM。在 Firefox 里,他们通过 WebAssembly 演示了技术可行性,但没做完整的浏览器利用。GraalVM 也表现出受影响的可能,不过内部运行时行为挡住了实际攻击。
Intel、AMD、Arm 都中招?️
按研究人员的说法,BTR 需要的 CPU 行为在测试过的 Intel、AMD 和 Arm 处理器上都观察到了。但完整的 Linux cBPF 利用工具针对的是 Intel 系统,不能理解成同一种攻击在所有架构上都一样好用。
好消息是,Linux 已经带了缓解措施。内核开发者加了保护:当 BPF JIT 内存被复用时,会刷掉分支预测状态,还引入了针对 JIT 喷射的加固。相关修复被跟踪为 CVE-2026-64507 和 CVE-2026-64508。


登录后才可以发布评论哦
打开小程序可以发布评论哦