英特尔处理器“幽灵”漏洞防御机制再遭突破:分支预测竞争条件引发新型攻击

英特尔处理器“幽灵”漏洞防御机制再遭突破:分支预测竞争条件引发新型攻击

原创 网空闲话 网空闲话plus 2025-05-13 22:50

Theregister网站5月13日报道称,苏黎世联邦理工学院的研究团队在2025年5月披露了一项重大安全发现,揭示了英特尔处理器针对Spectre v2漏洞的硬件防御机制存在根本性缺陷。这项研究通过论文《Branch Privilege Injection: Compromising Spectre v2 Hardware Mitigations by Exploiting Branch Predictor Race Conditions》(
该论文计划于今年晚些时候在USENIX Security 2025和Black Hat USA 2025上发表。
)及配套技术分析,详细阐述了名为分支预测器竞争条件(BPRC)的新型漏洞类别,以及基于此的分支权限注入(BPI)攻击方法,成功绕过了英特尔近年部署的多项关键防护措施。

背景:Spectre v2与硬件防御的局限性

Spectre v2漏洞自2018年曝光以来,

其利用处理器推测执行特性跨权限窃取数据的能力,成为硬件安全领域的核心挑战。
Spectre变体 2(编号为CVE-2017-5715)是谷歌研究人员于2018年1月披露的三个漏洞之一,该漏洞需要历史上最大的补丁协调工作,并引发了一个全新的研究领域,此后几年又发现了数十个CPU中的其他漏洞。

英特尔为此引入了间接分支限制推测(IBRS/eIBRS)和间接分支预测屏障(IBPB)等硬件级防护。eIBRS旨在将分支预测限制在当前特权域内,防止跨用户态与内核态的数据泄露;而IBPB通过清理预测状态,应对同一特权域内的潜在威胁。

然而,研究人员发现,这些防御机制依赖于分支预测器对权限状态的准确跟踪。而现代处理器的分支预测单元(BPU)采用异步更新机制,导致预测信息的记录与权限状态切换之间存在时间差。这种异步性为攻击者创造了竞争条件,使得预测信息可能被错误地标记为更高权限,从而绕过硬件隔离。

核心漏洞:BPRC与BPI攻击

研究团队通过逆向工程和实验验证,提出了三类BPRC漏洞变种:

BPRC_{U→K}:用户态攻击者通过精心设计的间接分支训练,使分支预测器在权限切换(如系统调用)后仍保留内核级预测标签,从而注入恶意分支目标。

BPRC_{G→H}:虚拟机(客户)通过触发VMExit事件,向宿主机管理程序(Hypervisor)注入跨特权预测。

BPRC_{IBPB}:即使部署IBPB清理预测状态,攻击者仍能通过竞争条件保留有效预测,突破屏障保护。

基于BPRC_{U→K},团队开发了分支权限注入(BPI)攻击技术。BPI通过控制分支目标缓冲区(BTB)的预测标签,使非特权进程能够在内核中注入任意分支目标。实验显示,在配备eIBRS的英特尔Raptor Cove处理器上,攻击者能以5.6 KiB/s的速度精准泄漏内核内存(如/etc/shadow密码哈希),准确率达99.8%。

苏黎世联邦理工学院助理教授Kaveh Razavi向The Register表示:“尽管eIBRS缓解措施本应能够阻止 Spectre v2,但BPI却能成功发动经典的Spectre v2攻击。Spectre v2能够跨越不同的安全边界泄露信息。

影响范围与厂商响应

研究证实,自第9代Coffee Lake Refresh至第13代Raptor Lake的英特尔处理器均受BPRC影响,涉及Skylake、Golden Cove等六代微架构。AMD与ARM处理器因分支预测机制差异未被波及。

英特尔于2024年9月通过PSIRT接收漏洞报告,并确认其为CVE-2024-45332(内部称“间接分支预测延迟更新”)。2025年5月,英特尔发布微码更新,要求客户通过系统厂商获取补丁。公司声明强调,目前未发现该漏洞在野利用案例,并称补丁性能影响“在正常基准波动范围内”。

研究团队则指出,微码修复在Alder Lake处理器上引入约2.7%的性能开销,而软件缓解方案(如禁用内核间接预测或结合Retpoline技术)可能导致1.6%-8.3%的性能损失,具体取决于处理器型号与工作负载。

英特尔公司回应与应对措施

英特尔公司在刚刚过去的星期二补丁日-5月13日通过官方声明确认漏洞(CVE-2024-45332),并强调已开发微码更新以修复问题,建议用户通过系统厂商获取补丁。
公司发言人称“感谢苏黎世联邦理工学院的研究合作及协调披露”,同时指出“迄今未发现瞬时执行漏洞的实际利用案例”,试图淡化漏洞的现时威胁。对于补丁性能影响,英特尔表示“标准基准测试结果处于正常波动范围内”,但未直接回应研究人员指出的最高8.3%性能损耗。此外,公司重申其硬件缓解策略的持续优化方向,并将责任部分转嫁给下游厂商,要求客户主动更新固件。这一回应凸显英特尔在平衡安全修复与性能损耗时的谨慎态度,同时也暴露出其在漏洞公开沟通中对技术细节的有限披露。

技术深层剖析与缓解建议

论文揭示了现有硬件防御的两大根本问题。

异步更新与权限状态脱节:分支预测器在指令退休后延迟更新,未与权限切换操作(如syscall、IBPB)同步,导致预测标签错误。

缓解措施副作用:如英特尔默认启用的BHI_DIS_S(隔离分支历史)意外禁用内核动态预测,反而提升BPI攻击可靠性。

研究团队提出双重缓解路径:

消除可利用分支:采用Retpoline替换间接分支,并结合禁用返回预测(RRSBA_DIS_S),但需承担较高性能成本。

禁用内核间接预测:通过IPRED_DIS_S彻底关闭内核间接分支预测,开销较低但仅支持新型处理器。

行业启示与未来挑战

此研究成果再次凸显推测执行设计中的安全悖论:性能优化与安全隔离难以兼得。尽管硬件厂商已逐步加强防御,但BPRC证明,微架构级漏洞的复杂性远超现有缓解策略的覆盖范围。

苏黎世联邦理工学院教授Kaveh Razavi指出:“只要处理器依赖推测执行,此类漏洞将长期存在。未来需在设计阶段集成更严格的形式化验证工具,并在新功能发布前进行渗透测试。”此外,研究团队呼吁行业关注跨特权攻击面的持续监测,并推动自动化漏洞检测框架的发展。

英特尔虽通过微码修复暂时遏制风险,但Spectre类漏洞的反复出现,迫使整个行业重新审视硬件安全模型的根本缺陷。随着量子计算与异构架构的演进,如何在性能与安全间寻求动态平衡,将成为芯片设计的下一个关键命题。

参考资源

1、
https://www.theregister.com/2025/05/13/intel_spectre_race_condition/

2、
https://www.theregister.com/2018/01/02/intel_cpu_design_flaw/

3、
https://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-01247.html

4、
https://www.csoonline.com/article/3984497/researchers-bypass-intels-spectre-fixes-six-years-of-cpus-at-risk.html

5、
https://comsec.ethz.ch/wp-content/files/bprc_sec25.pdf