
曾令芯片行业陷入修复混乱的Spectre漏洞出现新变种。来自荷兰自由大学(Vrije Universiteit)和意大利圣安娜高等学院(Scuola Superiore Sant’Anna)的安全研究人员发布报告,详细阐述了一种名为“分支目标重用”(Branch Target Reuse,简称BTR)的新型攻击方式。
研究人员将BTR定义为首个针对即时编译(JIT)编译器的实际就地Spectre v2攻击。
推测执行的双刃剑
现代微处理器通过“推测执行”功能预判程序下一步操作并提前加载数据,以提升执行效率。处理器还会记忆重复出现的模式,但这为侧信道攻击留下了隐患。攻击者可通过观察时间、功耗等间接线索窃取信息,而非直接访问数据。
2017年,Spectre和Meltdown漏洞曝光,揭示了推测执行机制被滥用的风险。尽管行业紧急推出软件补丁,但修复过程伴随性能大幅下降甚至系统崩溃等问题。此后,各类模仿者和变种层出不穷,BTR即是最新一例。
BTR攻击机制详解
处理器使用分支目标缓冲区(BTB)存储重复模式。JIT编译器在程序运行期间将代码转换为原生机器指令,并在特定内存地址多次执行。CPU会学习该模式并尝试复用。
BTR攻击的核心在于:当JIT删除旧代码并在同一地址写入新内容时,CPU仍会依据BTB缓存尝试跳转到旧地址。研究人员利用这一短暂的时间窗口,结合机器码字节在不同偏移量下具有不同含义的特性,实现漏洞利用。该过程无需植入新恶意软件。
研究论文展示了两种概念验证(PoC)漏洞,可在配备cBPF常量绑定防御的基于Intel的Linux内核中泄露根密码哈希。数据显示,在Intel Raptor Cove芯片上的泄露速率为5.7 KB/秒,Lion Cove芯片为5.4 KB/秒。媒体报道指出,这一速度虽慢,但足以让未授权用户从易受攻击系统中窃取敏感的密码哈希。
目前,Linux内核开发人员和Oracle已发布缓解措施,该漏洞获得CVE-2026-64507和CVE-2026-64508两个编号。Mozilla则倾向于加强站点隔离,尽管间接分支预测屏障(IBPB)可能有效,但会牺牲性能。研究人员建议,一旦厂商提供补丁,用户应立即更新操作系统和软件。
相关论文已通过同行评审,并被将于今年11月中旬在荷兰海牙举行的ACM CCS 2026会议接收。