BootHole 漏洞影响数十亿 Windows 和 Linux 设备

  • 时间:
  • 来源:网络

   

近日,研究人员在 Secure Boot(安全启动)过程的核心组件中发现一个安全漏洞—— BootHole,CVE 编号为 CVE-2020-10713。攻击者利用该漏洞可以修改启动加载过程。启动加载过程是在真实操作系统启动之前进行的,这一过程主要依靠启动加载器(bootloader),负责加载所有操作系统之上运行的计算机硬件组件的固件。

BootHole 是当下最流行的加载启动器组件 GRUB2 中的安全漏洞。GRUB2 是大多数 Linux 发行版的首选启动加载器,也是部分 Windows、macOS 和 BSD 系统的启动器。

BOOTHOLE 工作原理

BootHole 漏洞其实是 Eclypsium 研究人员今年早些时候发现的。完整技术细节参见https://www.eclypsium.com/2020/07/29/theres-a-hole-in-the-boot/

攻击者利用 BootHole 漏洞可以修改 GRUB2 组件在加载启动过程中插入和执行恶意代码,植入后期用来控制整个操作系统的代码。

Eclypsium 称,BootHole 漏洞是位于与 GRUB2 独立的配置文件 grub.cfg 中的,grub.cfg 文件中保存着加载启动器指定的系统设置。攻击者可以修改配置文件中的值来触发 GRUB2 组件的缓冲区溢出漏洞,比如每次系统启动后读取该文件时就会触发缓冲区溢出漏洞。

下图是 BootHole 攻击漏洞的简单描述,攻击者可以修改 grub.cfg 中的一个或多个选项来在 GRUB2 组件中执行恶意代码。

Eclypsium 称,BootHole 可以被滥用来攻击加载启动器,甚至可以用恶意或有漏洞的版本来替换。此外,启动了 Secure Boot 的服务器或工作站仍然受到 BootHole 漏洞的影响。

Secure Boot 是服务器或计算机用加密检查的方法来确保启动进程只加载经过加密签名的固件组件。在一些设备和操作系统的设置中,Secure Boot 并不验证 grub.cfg 文件的内容,因此攻击者可以修改其内容,因此启用 Secure Boot 并不影响 BootHole 攻击。

BootHole 攻击也不是万能的。要实现攻击,攻击者需要有 admin 权限来修改 grub.cfg 文件。这看起来是对攻击的一个限制,但事实上并不是,因为操作系统和其组件中存在提权漏洞可以被用来构成攻击利用链使恶意软件获取 admin 权限,并最终修改 grub.cfg。

此外,Secure Boot 过程主要是为了防止高权限的 admin 账号入侵启动过程,也就是说,BootHole 是 IT 生态系统最安全的操作中的严重安全漏洞。

漏洞影响

每个 Linux 发行版应该都受到该漏洞的影响,因为所有使用 GRUB2 加载器的系统都可以从外部 grub.cfg 文件中读取命令。截止目前,已经确定有 80 多个 shim 受到该漏洞的影响。Shim 是允许 OEM/ 厂商固件代码与 GRUB2 进行交互的组件。

除了 Linux 系统外,所有使用标准 UEFI CA 的 Secure Boot 的系统也受到该漏洞的影响。因此,研究人员认为目前使用的大多数主流系统都受到该漏洞的影响,包括服务器、工作站、笔记本、台式机、以及基于 Linux 的 OT 和 IoT 系统。

补丁和修复

Eclypsium 称已经通知了所有的软硬件生态系统,预计今天开始相关厂商会陆续发布补丁来修复 BootHole 安全漏洞。预计会发布安全预警和补丁的厂商有:

· 微软

·UEFI Security Response Team ( USRT )

·Oracle

·Red Hat ( Fedora and RHEL )

·Canonical ( Ubuntu )

·SuSE ( SLES and openSUSE )

·Debian

·Citrix

·HP

·VMware

·OEMs

·以及包括安全软件在内的软件厂商

由于修复启动器漏洞是一个复杂的过程,设计多个组件和加密技术,因此 Eclypsium 猜测整个修复的周期会比较长。

Canonica 响应

Canonica 的安全工程师主管 Joe McManus 称,Canonical 正在与开源社区合作来升级 GRUB2 以应对这一安全漏洞。在这一过程中,研究人员还发现了 GRUB2 的 7 个安全漏洞,相关补丁已经发布。攻击本身并不是远程漏洞利用,但是需要攻击者有 root 权限,因此该漏洞并不会成为广泛利用的在野漏洞。

Red Hat 回应

Red Hat 安全产品主管 Peter Allor 称,Red Hat 也意识到了该漏洞,目前正在进行深入分析以确定漏洞是否影响 Red Hat 产品,以及漏洞是如何影响 Linux 内核的。补丁发布后将会尽快推送给所有受影响的产品和用户。