本仓库包含与 CVE-2024-7344 相关的研究材料,这是一个影响 UEFI 系统的 Secure Boot 绕过漏洞。它集中整理了该漏洞的技术分析、攻击流程文档,以及为在受控环境中复现该漏洞行为而重新创建的应用。本仓库还包含文档和研究资源,旨在帮助安全研究人员理解、研究并实验与该漏洞相关的技术。
CVE-2024-7344 最初由 ESET 研究团队发现并负责任地披露,CERT/CC 提供了协调披露支持。官方和社区参考:
本仓库包含一个简化的教育性概念验证,用于复现与 CVE-2024-7344 相同的漏洞类别。此外,原始真实世界实现的一部分已通过专门的 UEFI 安全研究工作进行了分析和记录。
有兴趣了解该漏洞的历史起源、原始 ALRM 格式、自定义 RxPE 加载器以及 Microsoft 撤销后受影响产品演变的研究人员,请参阅配套仓库 "UEFI-Security-Research-Howyar-SysReturn-NetCopy"。
受 CVE-2024-7344 影响的原始 x32 易受攻击的 UEFI 应用程序包含在本仓库中。
已知 x64 可执行文件可在 VirusTotal 上托管的存档中获取。访问该样本需要 VirusTotal 企业版账户,在撰写本文时我们尚无法下载。供参考,具有适当访问权限的研究人员可在以下 URL 找到该样本:
CVE-2024-7344 是一个 UEFI Secure Boot 绕过漏洞,由经 Microsoft 签名的第三方 UEFI 应用程序在启动过程中不正确加载和执行未签名的 UEFI 可执行文件所致。该漏洞允许攻击者在操作系统加载之前执行不受信任的代码,即使启用了 Secure Boot,也能有效破坏 UEFI Secure Boot 信任链。
与基于内存损坏或 NVRAM 篡改的其他 Secure Boot 绕过漏洞不同,CVE-2024-7344 是逻辑和设计缺陷的结果。受影响的 UEFI 应用程序实现了自己的自定义 PE 加载器,而不是依赖标准 UEFI 服务(LoadImage 和 StartImage),从而绕过了 Secure Boot 通常强制执行的所有加密验证。
由于该易受攻击的应用程序使用 Microsoft 的第三方 UEFI 证书签名,并且在大多数系统上默认受信任,因此利用发生在平台高度特权且早期的执行阶段。
Secure Boot 是 UEFI 的一项核心安全功能,旨在强制执行从固件到操作系统的平台信任链。其主要目的是防止未经授权或恶意的启动组件(例如 bootkit)在启动过程中执行。
从高层次来看,Secure Boot 通过在允许 UEFI 可执行文件运行之前对其进行加密验证来工作。此验证使用固件维护的两个数据库执行:
UEFI 应用程序在以下任一情况下被允许执行:
默认情况下,大多数系统在 db 中信任以下证书:
受 CVE-2024-7344 影响的易受攻击应用程序使用 Microsoft Corporation UEFI CA 2011 证书签名。由于该证书在各大厂商和平台中被广泛信任,此类已签名应用程序中的任何漏洞都会产生全球性影响,并可在大多数 UEFI 系统上被利用。
该漏洞由 ESET 研究团队在分析多个实时恢复软件产品附带的 UEFI 组件时发现。初步侦察揭示了存在一个名为 reloader.efi 的经 Microsoft 签名的 UEFI 应用程序,它与一个名为 cloak.dat 的数据文件一起部署在 EFI 系统分区(ESP)上。
对应用程序的检查表明,它旨在系统启动期间从磁盘加载并执行额外的 UEFI 负载。虽然这种行为本身并不固有地不安全,但进一步的逆向工程揭示,该应用程序不使用标准 UEFI 镜像加载服务,并且不对加载的负载强制执行 Secure Boot 验证。进一步调查确认,同一易受攻击的引导加载程序被多个不同厂商的产品使用。
CVE-2024-7344 的根本原因在于已签名 UEFI 应用程序内部实现的自定义 PE 加载器。具体来说:
通过绕过 LoadImage 和 StartImage,该应用程序完全避免了 Secure Boot 验证。因此,无论 Secure Boot 状态如何,任何未签名的 UEFI 可执行文件都可以被执行。这从根本上违反了 Secure Boot 的假设,被归类为设计级安全缺陷,而非实现错误。
利用 CVE-2024-7344 不需要内存损坏、竞态条件或复杂的利用原语。相反,它依赖于滥用易受攻击应用程序的预期功能。
典型的利用工作流程包括:
在启动期间:
这使得在启用 Secure Boot 的系统上可靠部署 UEFI bootkit(例如 BlackLotus 或 HybridPetya)成为可能。
易受攻击的引导加载程序作为多个合法恢复和备份软件产品的一部分分发,包括:
Microsoft 通过于 2025 年 1 月 14 日发布的 Secure Boot dbx 更新撤销受影响的 UEFI 可执行文件来缓解 CVE-2024-7344,因此已应用最新 UEFI 撤销的系统可免受该漏洞的利用。
正在研究类似的内容?研究 UEFI、内核安全、利用技术或其他有趣的安全主题?如果您需要开发漏洞利用、探索某项技术,或只是想交流想法,请随时联系我。我一直乐于讨论研究、在力所能及的地方提供帮助,并合作开展有趣的项目。欢迎通过 LinkedIn 与我联系。