黑客可以使用刚刚修复的英特尔漏洞在PC上安装恶意固件

《黑客可以使用刚刚修复的英特尔漏洞在PC上安装恶意固件》

过去十年来,随着计算机上存储的敏感数据数量激增,硬件和软件制造商已投入越来越多的资源来保护设备,以防设备丢失,被盗或没收时受到物理攻击。本周初,英特尔修复了一系列错误,使攻击者可以在使用其CPU的数百万台计算机上安装恶意固件。

该漏洞使具有物理访问权限的黑客可以覆盖英特尔在现代CPU中内置的保护,该保护可以防止未经授权的固件在引导过程中运行。该措施被称为Boot Guard,旨在将信任链直接锚定到芯片中,以确保所有加载的固件均由计算机制造商进行数字签名。Boot Guard可以防止有人篡改存储UEFI的SPI连接闪存芯片,UEFI是一个复杂的固件,它将PC的设备固件与其操作系统连接在一起。

硬件增强的安全性

《黑客可以使用刚刚修复的英特尔漏洞在PC上安装恶意固件》

当攻击者将硬件连接到计算机内部并使用Dediprog或类似的芯片编程工具将授权固件替换为恶意固件时,通常会发生此类黑客攻击 。

正如英特尔在这里解释的那样:

UEFI BIOS代码的执行通常不受底层硬件的束缚,这意味着该UEFI BIOS代码的运行无需经过验证或衡量。因此,这可能会使整个引导过程容易受到BIOS的破坏,无论是通过不受保护的更新过程还是通过使用SPI闪存更换或使用Dediprog进行的简单硬件攻击都可能发生。

英特尔Boot Guard为平台制造商和平台所有者提供了强大的硬件强制启动策略控件,以授权允许在该平台上运行哪些BIOS代码。英特尔Boot Guard提供了基于硬件的信任根(RoT)来进行平台启动验证,该负责在执行BIOS之前验证BIOS映像。英特尔Boot Guard提升了平台的安全性,减少了上述攻击媒介,并使发动攻击以破坏启动过程的难度加大。

今年年初,安全研究员Trammell Hudson发现了三个漏洞,这些漏洞使Boot Guard在计算机退出睡眠模式时无法正常工作。在技​​术上称为S3,此模式会保留存储在计算机内存中的所有项目,但会完全关闭CPU。

颠覆引导卫士

能够在唤醒过程中绕过Boot Guard的攻击者随后将能够执行一系列恶意活动。它们的主要目的是获得用于加密硬盘驱动器的密钥,只要这些密钥存储在内存中,就像它们在睡眠期间与许多计算机一样。这样一来,攻击者无需用户密码即可获取计算机上存储的所有数据的解密版本。

攻击者还可能使用rootkit(难以检测或无法检测的恶意代码)感染计算机,该rootkit将在系统管理模式下运行,直到下次重新启动为止。据报道,这种SMM植入物就是NSA所拥有的。

尽管这些类型的攻击很严重,但是由于无法远程完成黑客攻击,因此攻击情形受到限制。对于许多人来说,需要物理访问的攻击不是其威胁模型的一部分。它还需要硬件和固件专业知识以及特殊工具,例如Hudson开发的开源闪存模拟器Dediprog或Spispy。哈德森在本周发表的一篇文章中写道:

由于CVE-2020-8705需要物理访问,因此与远程利用相比,攻击者更难使用。但是,在一些实际的攻击场景中可以使用它。

一个例子是在机场清关时。大多数旅客在下降时关闭笔记本电脑,并使其进入S3睡眠状态。如果设备在降落时被对抗机构所取走,则磁盘加密密钥仍在内存中。对手可以卸下底盖,然后将spispy之类的系统内闪存仿真器连接到闪存芯片。他们可以唤醒机器,并通过spispy向其提供固件。该固件可以扫描内存以定位OS锁定屏幕进程并将其禁用,然后让系统正常恢复。现在,他们可以访问已解锁的设备及其秘密,而不必强迫所有者提供密码。

攻击者还可以在此时安装自己的SMM“ Ring -2” rootkit,该rootkit将一直驻留在下次硬重启之前。当系统移至受信任的网络时,这可以为他们提供代码执行功能,从而可能允许水平移动。

另一个示例是模拟SPI闪存的硬件植入。在spispy的一种变体中使用的iCE40up5k(一种小型现场可编程门阵列板)可以轻松地安装在SOIC-8封装的内部或下方,从而可以对恢复路径进行持续攻击。由于FPGA可以轻松地将冷启动和验证与从睡眠中恢复的系统区分开来,因此当设备通过Flashrom之类的工具进行验证或读取时,该设备可以提供具有正确签名的干净版本的固件,并且仅提供从睡眠恢复期间的修改版本。通过软件很难检测到这种植入物,并且如果做得好,在主板上也不会显得不合适。

修复程序

Boot Guard漏洞之一源于配置设置,制造商实际上通过一种称为一次性可编程熔丝的过程将其烧入CPU 。OEM应该可以选择将芯片配置为在计算机退出S3时是否运行Boot Guard。哈德森不确定为什么他所测试的所有五个制造商都将其关闭,但是他怀疑这是因为机器以这种方式恢复得更快。

英特尔女发言人在一封电子邮件中写道:“英特尔收到了一个影响英特尔Boot Guard的漏洞的通知,当从睡眠状态恢复时,物理攻击可能能够绕过英特尔Boot Guard身份验证。英特尔发布了缓解措施,并建议保持对设备的实际拥有。”

英特尔没有透露如何解决由无法重置的保险丝设置引起的漏洞。哈德森怀疑,英特尔使用运行在英特尔管理引擎中的固件进行了更改,该固件是CPU芯片组内部的安全和管理协处理器,可处理对OTP熔断器的访问。

点赞

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注