新的攻击绕过了英特尔、AMD和Arm CPU中现有的Spectre-v2缓解措施

研究人员已经披露了一种新技术,可以用来绕过英特尔、AMD和Arm现代处理器中现有的硬件缓解措施,并发起推测性的执行攻击,如Spectre,从主机内存泄漏敏感信息。
Spectre之类的攻击旨在打破不同应用程序之间的隔离,方法是在CPU硬件实现中利用一种称为推测执行的优化技术,诱使程序访问内存中的任意位置,从而泄露它们的秘密。
虽然芯片制造商已经整合了软件和硬件防御,包括Retpoline以及增强的间接分支限制推测(eIBRS)和Arm CSV2等保护措施,但VUSec研究人员展示的最新方法旨在绕过所有这些保护措施。
它被称为分支历史注入(BHI或Spectre BHB),是Spectre-V2攻击的一个新变种(追踪为CVE-2017-5715),绕过EIBR和CSV2,研究人员将其描述为在现代英特尔CPU上泄露任意内核内存的“纯端到端攻击”。
研究人员解释说:“硬件缓解措施确实可以防止未经授权的攻击者为内核注入预测器条目”。
阿姆斯特丹Vrije Universiteit的系统和网络安全组织补充说:“然而,预测器依赖于一个全局历史来选择要推测执行的目标条目。攻击者可以从userland毒害该历史,迫使内核对泄漏数据的更“有趣”的内核目标(即小工具)进行预测失误”。
换句话说,一段恶意代码可以使用存储在CPU分支历史缓冲区(BHB)中的共享分支历史来影响受害者硬件上下文中预测失误的分支,从而导致推测性执行,然后可以使用该执行来推断不可访问的信息。
BHI可能会影响之前受Spectre-V2影响的所有英特尔和Arm CPU,促使两家公司发布软件更新以解决该问题。然而,AMD的芯片组不受该缺陷的影响。
英特尔还建议客户禁用Linux的无特权扩展伯克利数据包过滤器(eBPF),同时启用EIBR和监控模式执行预防(SMEP),并将“LFENCE添加到发现可利用的特定已识别小工具中”。
研究人员说:“英特尔eIBRS和Arm CSV2的缓解措施按预期工作,但剩余的攻击面比供应商最初设想的要重要得多”。
“然而,发现可利用的小工具比以前更加困难,因为攻击者无法直接跨权限边界注入预测目标。也就是说,内核不会推测性地跳转到攻击者提供的任意目标,而只会推测性地执行它过去已执行过的有效代码段”。