patapik/uefi-persistence-whitepaper

GitHub: patapik/uefi-persistence-whitepaper

一份面向防御者的 UEFI 固件持久化分析白皮书,涵盖已知 bootkit 与固件植入物的技术原理、检测规则及分层缓解策略。

Stars: 0 | Forks: 0

# 固件持久化技术 **高级 UEFI 与嵌入式持久化分析** **作者:** Maciej Gojny — GG Advanced IT Security ([ggsec.de](https://ggsec.de)) **版本:** 1.2 **日期:** 2026年7月 **密级:** TLP:WHITE — 公开发布 ## 📄 概述 本白皮书针对现代网络行动中旨在攻击 UEFI 固件、嵌入式系统、存储控制器和引导环境的固件级持久化技术,提供了技术概述。 与传统的 OS 持久化不同,固件级机制可以存活于: - 操作系统重装 - 磁盘格式化与更换 - 传统的 EDR/AV 威胁清除 本文档面向防御性安全从业者、固件审计员和企业安全架构师编写。出于安全考虑,特意省略了攻击性的实施细节。 ## 🆕 1.2 版本的新内容 | 章节 | 变更 | |---------|--------| | **§4.1** | 新增 — **bootkit 与固件植入物对比**:并行对比驻留在 ESP 和驻留在 SPI 的持久化机制,包括决定清除成本的“在磁盘更换后存活”能力区分 | | **§3.5** | 扩展 — 将 OEM 持久化模块作为一类独立威胁,并提供结构化检测指南 | | **§9** | 新增 — **2026 年 Secure Boot 信任锚过渡** 及免撤销冻结的故障模式 | | **§5.2** | 更新 — 工具表现在首推 `ggfw`,即 GGSEC 的固件分析工具包 | | **§5.5** | 新增 — SPI 获取注意事项:在描述符访问被拒绝时,主机侧转储可能会返回空白的 ME 区域 | | **§8** | 时间线扩展至 2025 年(Gigabyte App Center、PKfail、HybridPetya) | | **§11** | 新增 — 方法论与局限性 | | 通篇 | 已根据原始厂商和研究人员来源核实 CVE 引用 | ## 🎯 关键主题 | 类别 | 涵盖技术 | |----------|--------------------| | **持久化** | WPBT 滥用、NVRAM/UEFI 变量、SPI flash 修改、存储控制器固件 (HPA/DCO) | | **Bootkit** | BlackLotus (**CVE-2022-21894 "Baton Drop"**)、ESPecter、Bootkitty | | **固件植入物** | LoJax (APT28)、MosaicRegressor、MoonBounce (APT41, `CORE_DXE`)、CosmicStrand | | **OEM 持久化模块** | Absolute Computrace/LoJack、Lenovo Service Engine、GIGABYTE App Center、厂商密码恢复路径 (ASUS、HP) | | **供应链** | PKfail (CVE-2024-8105)、泄露的 AMI 测试 Platform Key | | **信任锚** | 2026 年 6 月 Secure Boot 证书过期;KEK/DB/DBX 生命周期 | | **检测** | `ggfw`、CHIPSEC、UEFITool、Binwalk、Ghidra、fwupd/LVFS;Sigma 规则;Splunk 查询 | | **缓解措施** | Secure Boot、TPM 2.0、Boot Guard / AMD PSP、WDAC、HVCI、SPI 写保护、P1–P3 路线图 | ## ⚠️ 常见混淆概念 以下是公开报道中反复出现并在文中明确澄清的两个误区: - **BlackLotus 利用的是 CVE-2022-21894 ("Baton Drop")**,这是 Windows Boot Manager 中的一个 Secure Boot 绕过漏洞。CVE-2023-24932 是一个相关但独立的绕过漏洞,其修复需要手动选择启用。两者都很重要;但它们不是同一个问题。 - **BlackLotus 持久化在 EFI System Partition 上,而不是在 SPI flash 中。** 它是一种 bootkit,而不是固件植入物。擦除 ESP 并重装 OS 就足够了 — 不需要物理重新刷写。请将物理重新刷写保留给已确认驻留在 SPI 的植入物(如 LoJax 或 MoonBounce)。 ## 📁 仓库内容 | 路径 | 描述 | |------|-------------| | `GGSEC_Firmware_Persistence_v12.pdf` | 完整白皮书(14 页) | | `sigma_rule_uefi_esp.yml` | Sigma 规则 — 未签名的 `.efi` 文件被写入 ESP | | `splunk_secureboot_tampering.txt` | Splunk 查询 — Secure Boot / BitLocker 篡改事件 | | `diagrams/` | 启动流程图 (SEC → PEI → DXE → BDS → TSL → RT) | | `src/` | HTML 源码和构建脚本 — PDF 是生成的,而非手动编辑 | ## 🚀 快速开始 1. 阅读白皮书,或直接跳转到 §10 查看优先行动计划 2. 实施 **P1** 控制:Secure Boot + TPM 2.0 + BitLocker、WDAC 策略、最新的 DBX 3. **盘点您整个机队中的 KEK 证书年份** — 2011 年还是 2023 年 — 为 2026 年 6 月的过期做好准备 4. 通过 Sysmon 部署 Sigma 规则以监控 ESP 5. 在具有代表性的设备样本上运行离线 SPI 分析 ## 🔧 构建 PDF PDF 由 HTML 生成。编辑源码,重新构建,然后同时提交两者。 ``` pip install weasyprint cd src/ python3 build_pdf.py ``` 构建过程完全离线 — 字体已打包在 `src/fonts/` 中。无需网络访问。 ## 📚 参考资料 ESET Research · Kaspersky GReAT · Microsoft MSRC · NSA · Binarly REsearch · Eclypsium · MITRE ATT&CK · NIST SP 800-193 · UEFI Forum 完整引用列表见白皮书第 §12 章。 ## 🔗 相关内容 - **UEFI 攻击面研究** — 配套论文,涵盖 bootkit 架构、Secure Boot 绕过技术、SMM (Ring -2)、DXE 驱动分析以及实用的固件工件 ## 📝 许可证 CC BY-NC 4.0 — GGSEC Research ## 👤 作者 **Maciej Gojny** — GGSEC Research GitHub: [@patapik](https://github.com/patapik) · 网址: [ggsec.de](https://ggsec.de)
标签:DAST, meg, UEFI固件, 信息安全, 多模态安全, 威胁情报, 开发者工具, 恶意软件分析, 漏洞靶场, 逆向工具, 防御检测