研究人员发现一个大多数笔电、桌机、工作站与服务器之安全启动(Secure Boot)功能都有的高风险安全漏洞“BootHole”。网络攻击者可透过它载入恶意程式、窃取资讯,并横向扩展(Move laterally)至公司、营运科技(OT)、IoT 物联网及家庭网络。
研究人员警告指出,数十亿台 Windows 和 Linux 装置的 GRUB2(GRand Unified Bootloader Version 2)启动程式中存在程式瑕疵,会有招致网络攻击的安全风险。GRUB2 是当前绝大多数计算系统的预设启动程式。其工作是管理部分的启动程序,它要么显示选单并等待使用者输入,要么自动将控制权转移给操作系统核心。
安全启动机制是一个产业标准,可确保装置仅使用受信任的软件来引导开机。当一台电脑启动时,固件会检查 UEFI(Unified Extensible Firmware Interface)固件驱动程式、EFI(Extensible Firmware Interface)应用程序和操作系统的数位签章。如果签章有效,电脑就会启动,同时固件会将控制权交给操作系统。据企业固件与硬件元件安全平台方案供应商 Eclypsium 研究人员表示,这个编号为 CVE-2020-10713 的漏洞让攻击者得以规避这些保护机制,并且在启动程式中,甚至在安全启动开启并适当执行签章验证时执行任意代码。
BootHole 会引发缓冲区溢位,成功入侵者几乎可以完全控制目标机器
由于该漏洞会在开机启动程式中开启漏洞,所以 Eclypsium 称之为“BootHole”,这个新漏洞会趁著 GRUB2 解析 GRUB2 组态档(grub.cfg)内容时引发缓冲区溢位(Buffer Overflow)。
“GRUB2 组态档是纯文字档,通常无法像其他档案和可执行档那样签署签章。”研究人员在 29 日公司分析报告写道。因此,安全启动机制不会检查。因此,攻击者可以修改 GRUB2 组态档内容,并将攻击码含括进去。更进一步,由于档案会在操作系统载入前先载入,所以攻击码会首先执行。研究人员解释:“透过这种方式,攻击者可常驻装置。”
技术方面,红帽(Red Hat)注意到 grub.cfg 组态档是由几个字串语汇基元(String Token)组成。“名为‘shim’的初始化启动程式将该组态档载入后,GRUB 初始化时会载入并解析组态档。”29 日发表的安全通报表示:“解析阶段,组态值会复制到存放在内存的内部缓冲区。长度大于内部缓冲区的组态语汇基元最终会导致缓冲区溢位问题。攻击者可能利用此缺陷执行任意码,进而劫持受害机器的启动程序,并规避安全启动保护机制。因此,攻击者可能载入无签章的二进制程式码,再进一步破坏系统完整性。”
一旦入侵成功,攻击者就可“几乎完全控制”目标机器:“组织应该监控他们的系统,以防止威胁和勒索软件透过有弱点的启动程式来感染或破坏系统。”报告指出。
虽然各家未将漏洞评为重大,但几乎无所不在
此漏洞达 CVSS 8.2 严重等级评分(红帽将严重程度评为“中等”,微软则评定为“Important 重要”等级)。BootHole 的严重程度尚未达到重大级,因想运用这个弱点,攻击者首先需要获得管理者权限。
据红帽表示:“攻击者首先需要建立系统存取权,例如获得实体存取权限,获得更改网络开机(pxe-boot)的能力,或拥有对要求具备最高根权限网络系统的远端存取权限。”但坏消息是,GRUB2 在计算领域几乎无所不在。
“漏洞存在于大多数 Linux 系统会使用的 GRUB2 启动程式。”研究人员表示:“凡是使用支援标准微软第三方 UEFI 凭证授权单位(CA)安全启动机制的任何 Windows 装置都无法幸免。”
他们补充,大多数从笔电到服务器等电脑都有这安全弱点,甚至对网络设备、适用健康照护与金融的专属设备、其他垂直领域及 IoT 装置,乃至 OT 与 SCADA 工控设备都会造成影响。总计约有数十亿台装置可能遭受此漏洞危害。
据 Eclypsium 指出,更糟糕的是,目前并没有简易更新修补程式或固件更新可解决这个问题。“整个风险缓解措施既复杂且充满风险,需要先签章特定有弱点程式然后再部署,接着撤销有安全漏洞的程式,以防止攻击者利用早有漏洞的版本程式。”研究人员表示:“这 3 阶段的安全缓解程序可能会使组织耗费数年才能全面修补。”
Eclypsium 已与大量受影响供应商及 Linux 发行版供应商进行 BootHole 责任揭露的协调分配,包括微软、UEFI 安全应变小组(UEFI Security Response Team,USRT)、甲骨文(Oracle)、红帽(Fedora 和 RHEL 系统)、Canonical(Ubuntu 系统)、SuSE(SLES 和 openSUSE 系统)、Debian、Citrix、VMware 及各类型 OEM 和软件供应商,一些厂商已发表安全公告。据 Eclypsium 指出,微软将发布一套经签章的 dbx 邮件档更新程式,以便封锁会载入有漏洞版本 GRUB2 的 shim 初始化启动程式。
- Billions of Devices Impacted by Secure Boot Bypass
(首图来源:Eclypsium)