HackerNews

HackerNews
11 个旧的微软签名 Linux UEFI Shim 可让攻击者绕过 Secure Boot

11 个旧的微软签名 Linux UEFI Shim 可让攻击者绕过 Secure Boot

给文章评分:

网络安全研究人员发现了 11 个旧的、由微软签名的 UEFI(统一可扩展固件接口)应用程序,这些程序可能被滥用来绕过大多数使用现代固件标准的系统上的 Secure Boot。

"利用这些易受攻击的应用程序之一的攻击者可以在系统启动期间执行不可信代码,从而部署恶意的 UEFI bootkit 或其他恶意软件,"ESET 研究员 Martin Smolár 在今天发布的一份报告中表示。

这些 UEFI shim 引导加载程序会暴露任何信任微软"Microsoft Corporation UEFI CA 2011"第三方 UEFI 证书颁发机构(CA)证书的基于 UEFI 的机器,无论安装的是什么操作系统。该证书用于签名旨在在 Secure Boot 下运行的第三方启动组件。该证书已于 2026 年 6 月 27 日到期,并已被 Microsoft UEFI CA 2023 和 Microsoft Option ROM UEFI CA 2023 取代。

Shim 是一个轻量级的开源 UEFI 引导加载程序,充当计算机主板固件与 Linux 操作系统之间的中介。其主要目的是允许 Linux 发行版在启用 Secure Boot 时启动。值得注意的是,shim 本身使用固件信任的密钥进行签名,通常是微软签名,因为其证书预装在基于 UEFI 的设备上。

该过程如下:UEFI 固件加载 shim 并根据存储在固件中的微软 CA 验证其签名。然后 shim 根据其自身嵌入的供应商证书验证第二阶段引导加载程序(大多数情况下是 GRUB 2)。GRUB 2 最终使用相同的供应商证书验证内核。

这家斯洛伐克网络安全公司表示,这些过时但受信任的 shim 可以被利用来在系统启动时执行任意代码,使得恶意行为者即使启用了 Secure Boot 保护也能部署 UEFI bootkit,如 Bootkitty、HybridPetya 或 BlackLotus。

开源 shim 项目的 UEFI 引导加载程序,主要来自 0.9 及更早版本,在 2026 年 2 月负责任的披露后,已作为 2026 年 6 月 Patch Tuesday 更新的一部分被微软撤销。受影响的 shim 引导加载程序列表如下:

  • Spyrus WTGCreator(来自 UEFI shim loader 0.7 或更低版本)
  • RedHat RedHat Enterprise Linux 7.2(来自 UEFI shim loader 0.9)
  • RedHat CentOS 7.2(来自 UEFI shim loader 0.9)
  • Baramundi software baramundi Management Suite 至 2024R1(来自 UEFI shim loader 0.8)
  • WhiteCanyon/Blancco WipeDrive 8.0.0 至 8.1.3(来自 UEFI shim loader 0.7)
  • Finland's Matriculation Examination Board Abitti 1 1.0(来自 UEFI shim loader 0.8)
  • NTC IT ROSA, LLC ROSA Linux R10、R9(来自 UEFI shim loader 0.9)
  • Oracle America, Inc. OracleLinux 7.2(来自 UEFI shim loader 0.9)
  • PC-Doctor, Inc. PC Doctor Service Center 15、16(来自 UEFI shim loader 0.9)
  • OpenSuse OpenSuse UEFI Shim loader 0.9
  • OpenSuse OpenSuse Shim 2.1(来自 UEFI Shim loader 0.9)

这个漏洞的一个后果是,攻击者可以利用这些易受攻击的 shim 引导加载程序,通过使用"自带易受攻击驱动程序"(BYOVD)攻击技术在早期启动阶段(甚至在操作系统初始化之前)执行任意代码,从而绕过较新的安全机制。


Linux 系统还具有一个称为 Machine Owner Key(MOK)允许列表的安全功能,允许用户在 UEFI Secure Boot 激活时授权加载未签名的驱动程序。尽管在 shim 0.9 版本中引入了 MOK 拒绝列表,作为撤销与易受攻击的 UEFI 二进制文件相关联的旧签名证书并重新签名修补版本的一种方式。


在这种情况下,攻击者可以用一个旧的微软签名 UEFI shim 替换受害者最新的 shim,并利用允许列表仍然信任旧证书这一事实来绕过 MOK 拒绝列表的执行。这反过来可能允许攻击者的 shim 不受限制地加载易受攻击的二进制文件并获得任意代码执行。


不仅如此。这种攻击还破坏了 Secure Boot Advanced Targeting(SBAT),该机制旨在撤销易受攻击的启动组件,而不是维护一个包含每个文件对应的大量单个加密哈希的黑名单。换句话说,每当在启动链组件中发现漏洞时,该机制用于更新最低可接受代次。如果尝试启动使用了较旧的、易受攻击的版本,系统会阻止它并抛出错误。


CERT 协调中心(CERT/CC)在上个月发布的一份公告中表示,特定供应商的引导加载程序在上游项目的漏洞公开并修复后,并未更新以解决这些问题。


"因此,易受攻击的引导加载程序仍然保持签名状态并受 Secure Boot 系统信任,因为它们尚未通过微软签名的 DBX 撤销列表被撤销,"它指出。"这造成了长期的供应链暴露,即过时且易受攻击的启动组件仍然可以在完全修补的系统上执行。"


结果是,拥有管理权限或能够修改启动过程的攻击者可以滥用上述易受攻击的 shim 引导加载程序之一来绕过 Secure Boot 保护,并在操作系统加载之前执行任意代码,为持久的驻留铺平道路,这种驻留可以经受住操作系统重启,在某些情况下甚至可以经受住重新安装。


由于这一切都发生在操作系统和安全产品初始化之前,通过引导加载程序执行的恶意代码还可以绕过内置安全控制和端点检测与响应(EDR)解决方案的检测。


这些问题被追踪为 CVE-2026-8863 和 CVE-2026-10797,后者指的是 shim 中一个早已修补的问题,该问题允许通过修改第二阶段引导加载程序的签名头来绕过基于证书的撤销机制。


ESET 警告说,"Microsoft Corporation UEFI CA 2011"证书的到期对 Secure Boot 验证过程没有影响,只要使用过期证书签名的引导加载程序没有通过哈希被明确撤销。


"这些旧 shim 的危险之处不在于新的漏洞,而在于不需要新漏洞就能绕过 UEFI Secure Boot,"ESET 表示。"攻击者不需要复杂的利用原语——只需要一份旧的、仍然受信任但未被撤销的 shim 二进制文件副本,以及对 UEFI shim 工作原理的基本了解。这就足以绕过 UEFI Secure Boot 这样重要的安全功能。"



消息来源:thehackernews.com;
本文由 HackerNews.cc 翻译整理,封面来源于网络;
转载请注明“转自 HackerNews.cc”并附上原文
分享到:
hackernews

hackernews

该作者暂无简介