今天一大早,Red Hat';的Bugzilla错误跟踪器出现了一个紧急错误--一位用户发现RHSA_2020:3216 GRUB2安全更新和RHSA-2020:3218内核安全更新导致RHEL 8.2系统无法启动。据报道,该漏洞可在任何干净的Red Hat Enterprise Linux 8.2最小安装上重现。
这些补丁旨在关闭GRUB2引导管理器中新发现的名为BootHole的漏洞。该漏洞本身给系统攻击者留下了一种可能在Linux系统上安装Bootkit恶意软件的方法,尽管该系统受到UEFI Secure Boot的保护。
不幸的是,Red Hat对GRUB2和内核的补丁一旦应用,就会使打补丁的系统无法启动。该问题已确认会影响RHEL 7.8和RHEL 8.2,也可能会影响RHEL 8.1和7.9。RHEL派生分布CentOS也受到影响。
Red Hat当前建议用户在解决这些问题之前不要应用GRUB2安全修补程序(RHSA-2020:3216或RHSA-2020:3217)。如果您管理的是RHEL或CentOS系统,并且相信您可能已经安装了这些补丁程序,请不要重新启动您的系统。使用sudo yum downgrade shim\*grub2\*mokutil将受影响的软件包降级,并通过临时向/etc/yum.conf添加exclude=grub2*shim*mokutil将yum配置为不升级这些软件包。
如果您已应用补丁程序并尝试(但失败)重新启动,请在故障排除模式下从RHEL或CentOS DVD启动,设置网络,然后执行上述相同步骤以恢复系统功能。
尽管该错误最初是在Red Hat Enterprise Linux中报告的,但来自不同家族的其他发行版也陆续传来明显相关的错误报告。Ubuntu和Debian用户报告在安装GRUB2更新后系统无法启动,Canonical已经发布了一项建议,其中包括受影响系统的恢复说明。
虽然GRUB2缺陷的影响相似,但不同的发行版范围可能不同;到目前为止,Debian/Ubuntu GRUB2缺陷似乎只影响在BIOS(而不是UEFI)模式下启动的系统。一个补丁已经提交到Ubuntu建议的存储库,经过测试,并发布到其更新库。更新和发布的软件包grub2(2.02~beta2-36ubuntu3.。27)异种和GRUB2(2.04-1ubuntu26.2)焦点,应该可以解决Ubuntu用户的问题。
我们目前没有任何关于GRUB2 BootHole补丁中的缺陷或对其他发行版(如Arch、Gentoo或Clear Linux)的影响的消息。