- TL;DR:介绍 InSpectre Gadget 工具,通过符号执行准确推理可用 gadgets 的可利用性,能发现新的可利用 gadgets 且可绕过 Intel 缓解措施,展示基于 BHI 变体的首个针对 Linux 内核的原生 Spectre-v2 漏洞利用,每秒可泄露 3.5kB 任意内核内存,并开源相关代码等。
- Native BHI(CVE-2024-2201):先前工作表明内核中 Spectre-V2 攻击可通过分支历史注入(BHI)实现,供应商建议禁用无特权 eBPF 缓解措施,于是开发 InSpectre Gadget 工具来分析 Spectre gadgets 及其可利用性,发现 1511 个 Spectre gadgets 和 2105 个“调度 gadgets”,基于此制作了原生(eBPF=off)BHI 漏洞利用演示。
- FineIBT Bypass:基于 CET-IBT 的 FineIBT 引入细粒度控制流完整性(CFI),虽缩短推测窗口但未完全关闭,在兄弟核上启动竞争工作负载时推测窗口大小增加,可利用 InSpectre Gadget 发现的数百个 Spectre gadgets 进行内存泄露,通过新的基于 angr 的 gadget 分析器 InSpectre Gadget 找到 Spectre-V2 gadgets,其工作原理是从推测入口点列表开始,通过符号执行等步骤输出潜在传输的数据库等。
- Tool Internals:分析仪标记寄存器和栈位置为符号,通过符号执行探索推测窗口,记录相关信息,推理器考虑不同侧通道和利用技术来推理可利用性,输出注释的汇编文件展示攻击流程和相关细节。
- More details:InSpectre Gadget 论文被 33 届 USENIX Security Symposium 2024 接受,可查看相关代码等:InSpectre Gadget 工具等、InSpectre Gadget 文档。
- FAQ:Native BHI 与 BHI 的区别是原 BHI 用 eBPF,本文展示无 eBPF 的 BHI 即 Native BHI;受 Native BHI 影响的系统是所有受 BHI 影响的 Intel 系统;保护系统可参考相关安全咨询。
- Acknowledgements:感谢匿名评审反馈,该工作得到 Intel 等资助。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。