您现在的位置是:首页 >科技 > 2020-07-30 11:28:28 来源:
新的缺陷使安全启动无效但没有理由惊慌
研究人员在周三说,GRUB2是全球启动计算机使用最广泛的程序之一,它具有一个漏洞,可以使攻击者更容易在启动过程中运行恶意固件。这将影响数百万甚至可能数亿的计算机。虽然GRUB2主要用于运行Linux的计算机,但利用漏洞攻击的攻击也可以在许多运行Windows的PC上进行。
由安全公司Eclypsium的研究人员发现的该漏洞对UEFI Secure Boot构成了又一严重威胁,UEFI Secure Boot是一种行业标准,使用加密签名来确保计算机制造商信任启动期间使用的软件。安全启动旨在防止攻击者通过用恶意软件替换目标软件来劫持启动过程。
更隐形,功能更强大且难以消毒
所谓的引导程序包是最严重的感染类型之一,因为它们在软件堆栈的最低级别运行。这样一来,该恶意软件就可以比大多数恶意软件更隐密,可以在操作系统重新安装后幸存下来,并且可以规避操作系统中内置的安全保护措施。
研究人员将其命名为Boot Hole漏洞,其起因于缓冲区溢出,即GRUB2解析grub.cfg(引导加载程序的主要配置文件)中的文本。通过在文件中添加长文本字符串,攻击者可以使为该文件分配的内存空间过满,并导致恶意代码溢出到内存的其他部分,然后在其中执行该代码。
配置文件未进行数字签名,因此安全启动不会检测到何时对其进行了恶意更改。GRUB2也不使用地址空间布局随机化,数据执行保护以及操作系统中标准的其他反利用保护。这些遗漏使已经在目标计算机上立足于利用该漏洞的攻击者变得微不足道。从那里开始,他们可以完全绕过许多人希望防止Bootkit受阻的保护措施。
除了Eclypsium报告外,Debian 在此还提供了详尽的概述。
但是有一些主要问题
但是,此漏洞的严重性已被一些因素抵消。首先,攻击者必须具有对计算机的管理权限或对计算机的物理访问权。由于现代OS在阻止漏洞利用方面取得了重大进步,因此越来越难获得管理员级别的控制。在过境或用户暂时失去对计算机的实际拥有权的类似时刻,物理访问可能会更容易。但是在大多数其他情况下,要求很高,因此不太可能影响许多用户。而且,物理财产极大地限制了攻击的可扩展性。
还有两个其他因素可以使Boot Hole变得不那么令人恐惧:已经对计算机进行管理或物理控制的攻击者已经有了许多其他方法来感染高级和隐秘的恶意软件。此外,还有其他几种绕过安全启动的已知技术。
“我认为安全启动并不是当今PC安全的基础,因为它很少有效,并且,根据他们[Eclypsium]的主张,它已经很容易绕过了一年,没有长期修复措施。 Atredis Partners研发副总裁兼软件开发专家HD Moore告诉我。“我不确定GRUB2中的缓冲区溢出对什么有用,因为如果grub.cfg是未签名的,还会有其他问题。“它可能作为恶意软件载体很有用,但是即使那样,当可以使用自定义grub.cfg文件代替链式加载真实操作系统时,也没有理由利用缓冲区溢出。”
其他研究人员似乎也同意这一评估。跟踪漏洞后,CVE-2020-10713的严重等级为“中等”。
极乐世界声称摩尔所指的是在2月份撤销了一个引导装载程序安全公司卡巴斯基实验室的工作,该公司将卡盘用于启动用于禁用计算机的应急磁盘。撤销引起了很多问题,以至于负责监督验证过程的Microsoft 回滚了更改。撤销不仅强调修补Boot Boot之类的缺陷的难度(稍后会详细介绍),而且还强调了绕过Secure Boot的可能性。
不可怕并不意味着不认真
开发的障碍和局限性并不意味着该漏洞不值得认真对待。安全启动是专为利用启动孔所需的方案而创建的。受影响的计算机和软件制造商的数量加剧了风险。极乐世界列出了受影响者的完整列表。他们是:
另一个需要认真考虑的问题是推出无法永久阻止计算机启动的更新程序的挑战,这种现象通常称为“砖化”。正如卡巴斯基事件所显示的那样,这种风险是真实存在的,并且可能带来可怕的后果。
修复混乱本身就是一团糟
修复程序涉及一个多步骤的过程,该过程并不容易,在许多情况下也不是很快的。首先,必须更新GRUB2以修复该漏洞,然后再分发给大型组织的制造商或管理员。在那里,工程师将必须对其支持的每种计算机型号进行彻底的更新测试,以确保机器不会变硬。对于必须这样做的机器,更新必须是固定的。只有这样,该更新才可以正常安装。
即使那样,对于具有上述特权的攻击者来说,将GRUB2回滚到其易受攻击的版本并利用缓冲区溢出也将是微不足道的。尽管Windows计算机通常没有安装GRUB2,但是特权攻击者通常可以安装它。为了消除此漏洞,计算机制造商将必须撤销可验证旧版本的加密签名或加载旧版本的“填充”固件。
此步骤也冒着砌砖机的风险。如果在安装GRUB2版本之前撤销了签名(对于Windows计算机,则为其他引导组件的签名),则在进行充分的测试之前,数百万台计算机也有被阻塞的风险。
为了避免这种可能性,Microsoft,Red Hat,Canonical以及其他操作系统和硬件制造商通常分两个步骤提供修复程序。首先,只有在经过测试并认为可以安全安装后,才会发布GRUB2更新。然后,在可能持续数月的一段时间后,签名将被撤销。仅在完成第二步之后,才会修补漏洞。
Microsoft经营着证书颁发机构,该证书颁发机构对由制造商适当授权的UEFI签名进行认证,并发布了以下声明:
我们知道Linux常用的GRand Unified Boot Loader(GRUB)中存在一个漏洞。要利用此漏洞,攻击者需要在配置了安全启动以信任Microsoft UEFI CA的系统上具有管理特权或物理访问权限。我们正在努力完成必需的Windows Update程序包的验证和兼容性测试。
微软发言人表示,该公司将为急需的IT管理员提供“缓解选项,以安装未经测试的更新”。发言人说,微软将在未指定的时间发布修补程序,以提供一般可用性。Microsoft已在此处发布了知识库文章。
来自其他受影响公司的建议太多,无法在本文的初始版本中提供。暂时,读者应检查受影响公司的网站。这篇文章将在以后更新以提供链接。
目前,没有理由恐慌。对漏洞利用的苛刻要求使此漏洞的严重程度适中。就像已经提到的,安全启动已经容易受到其他旁路技术的攻击。这并不意味着没有理由认真对待此漏洞。尽快对它进行修补,但只有经过有经验的用户或受影响的操作系统和软件制造商的全面测试之后,才能进行修补。同时,不要失去任何睡眠。