VUSec安全研究小组和英特尔周二联合披露了一个新的Spectre类投机执行漏洞,称为分支历史注入(BHI)或Spectre-HBB。
BHI是对Spectre V2(或Spectre- *** I)类型攻击的概念重新实现的证明。它影响到任何同样易受Spectre V2攻击的CPU,即使Spectre V2的缓解措施已经实施;它可以绕过英特尔的eIBRS和Arm的CSV2缓解措施。这些缓解措施可以保护分支目标注入,而新的漏洞允许攻击者在全局分支历史中注入预测器条目。BHI可以用来泄露任意的内核内存,这意味着像密码这样的敏感信息可以被泄露。
VUSec对此的解释如下:”BHI本质上是Spectre v2的扩展,我们利用全局历史来重新引入跨权限 *** I的利用。因此,攻击者的基本原理仍然是Spectre v2,但通过跨权限边界注入历史(BHI),我们可以利用部署新的硬件内缓解措施的系统(即英特尔eIBRS和Arm CSV2)。”
该漏洞影响到自Haswell以来推出的任何英特尔CPU,包括Ice Lake-SP和Alder Lake。受影响的Arm CPU包括Cortex A15/A57/A65/A72/A73/A75/A76/A77/A78/X1/X2/A710、Neoverse N2/N1/V1和博通Brahma B15。
Arm的CVE ID是CVE-2022-23960,Intel使用的是CVE-2022-0001和CVE-2022-0002的ID。两家公司都发布了有关其受影响CPU的更多细节:
https://www.intel.com/content/www/us/en/developer/topic-technology/software-security-guidance/processors-affected-consolidated-product-cpu-model.html
https://developer.arm.com/support/arm-security-updates/speculative-processor-vulnerability/spectre-bhb
英特尔发布了关于BHI漏洞的以下声明。”正如研究人员所证明的那样,这种攻击以前在大多数Linux发行版中都被默认缓解了。Linux社区已经从Linux内核5.16版本开始实施英特尔的建议,并正在将缓解措施回传到Linux内核的早期版本。英特尔发布了技术文件,描述了那些使用非默认配置的人的进一步缓解方案,以及为什么LFENCE; JMP缓解措施在所有情况下都是不够的”。
AMD CPU似乎对BHI有免疫力。据Phoronix称,默认使用Retpolines进行Spectre V2缓解的AMD处理器应该是安全的。
供应商的安全补丁应该很快就会发布。除了安装它们之外,研究人员建议禁用无特权的eBPF支持作为额外的预防措施。Linux已经将安全更新合并到其主线内核中。这些安全缓解措施是否会影响性能尚不清楚。
VUSec的漏洞的源代码可以在这里找到:
https://github.com/vusec/bhi-spectre-bhb