每个月,Windows 用户和管理员都会在补丁星期二(或星期三,具体取决于您所在的位置)收到来自 Microsoft 的更新。 每个月,大多数用户都会应用相同的更新。
但是我们应该吗?
恰当的例子:KB5012170,这是一个于 8 月 9 日发布的补丁,它要么不会导致任何问题,要么会触发 Bitlocker 恢复密钥请求,或者根本不会安装,要求你去寻找固件更新。 这个补丁称为 Secure Boot DBX 的安全更新,适用于几乎所有受支持的 Windows 版本。 具体来说,它会影响 Windows Server 2012; Windows 8.1 和 Windows Server 2012 R2; Windows 10,版本 1507; Windows 10 版本 1607 和 Windows Server 2016; Windows 10 版本 1809 和 Windows Server 2019; Windows 10,版本 20H2、21H1 和 21H2; Windows 服务器 2022; Windows 11 版本 21H2(原始版本)和 Azure Stack HCI 版本 1809,一直到 Azure Stack Data Box 版本 1809 (ASDB)。
但问题是:并非所有机器都具有相同的风险因素。 此特定更新处理安全风险,其中“安全启动中存在安全功能绕过漏洞。 成功利用此漏洞的攻击者可能会绕过安全启动并加载不受信任的软件。 此安全更新通过将已知易受攻击的 UEFI 模块的签名添加到 DBX 来解决漏洞。”
正如 Microsoft 指南中所述:“要利用此漏洞,攻击者需要在安全启动配置为信任 Microsoft 统一可扩展固件接口 (UEFI) 证书颁发机构 (CA) 的系统上拥有管理权限或物理访问权限。 攻击者可以安装受影响的 GRUB 并在目标设备上运行任意引导代码。 成功利用此漏洞后,攻击者可以禁用进一步的代码完整性检查,从而允许将任意可执行文件和驱动程序加载到目标设备上。”
我不建议忽略或阻止更新,除非副作用的风险大于补丁本身。 在这种特定情况下,攻击者必须要发生以下两种情况之一。
[ 2023 年 CIO 100 奖:提名征集开始。 今天提交。 ]
他们必须能够物理访问机器。 对于典型的家庭或消费者用户,这种风险很低。 攻击者必须先闯入您的房屋,然后尝试绕过操作系统的引导加载程序。 实际上,他们更有可能偷您的电视、寻找现金或抢走其他贵重物品。 攻击者窃取您的计算机或硬盘驱动器会容易得多。
他们必须对您的计算机具有管理权限。 对于普通用户来说,如果攻击者已经拥有系统的管理权限,他们就可以监控用户名和银行网站的凭证以及其他敏感信息。
我还不确定对于大多数家庭用户来说,这些机器的风险是否值得安装这个补丁。 很多时候,我们看到的副作用与攻击风险本身一样具有影响力。 正如 Eclypsium 博客中所述:“2019 年 4 月,Kaspersky Rescue Disk 如何使用 GRUB2 的漏洞被公开披露。 2020 年 2 月,在修复版本发布 6 个多月后,微软推出更新,通过更新 UEFI 撤销列表 (dbx) 来阻止已知易受攻击的卡巴斯基引导加载程序,从而在所有 Windows 系统中撤销易受攻击的引导加载程序。 不幸的是,这导致来自多个供应商的系统遇到意外错误,包括设备变砖,并且更新已从更新服务器中删除。”
因此,当 KB5012170 发布到某些机器时,它会提供给所有机器——包括虚拟机器(甚至是那些使用传统 BIOS 设置的机器)。 虽然绝大多数人都安装了更新,但仍有一些机器被明确阻止,尽管包括没有启用 DBXEnabled 的 HP Elite 系列、FUJITSU FJNBB38 和 Mac Boot Camp。KB5012170 得到
三个易受攻击的引导加载程序包括 CryptoPro Secure Disk,另一个是名为 Eurosoft UK 的测试工具和磁盘擦除器,最后一个是 Reboot Restore Rx Pro,用于在教室、信息亭 PC 重新启动后恢复 PC 中的更改, 酒店宾客 PC 等。即使您没有使用这三个易受攻击的加载程序,您也会获得此“BIOS 更新”。
但副作用可能是灾难性的。 问问迈克科技博客的作者迈克·特里尔 (Mike Terrill),他最近解释了打补丁对他的不利影响。 最有可能的是,他有一台像某些戴尔或惠普型号的计算机,在他们的 C: 驱动器上设置了 Bitlocker,然后没有提示他们将恢复密钥保存到该人知道的备份位置。 (通常情况下,当使用 Azure 活动目录帐户或 Microsoft 帐户设置 Bitlocker 时,会保存 Bitlocker 恢复密钥,您可以登录并找到它。但某些机器会打开驱动器加密并且不会备份密钥 ;您在安装 KB5012170 后重新启动系统,它要求您提供您没有的恢复密码。)
一些用户报告说,按照这些步骤可以让他们成功启动进入操作系统:
重启你的电脑。
当您在屏幕上看到设备的徽标时,请继续点击 F2。
进入BIOS画面。
在常规下,选择启动顺序。
然后选择 UEFI 并在安全下选择 TPM 2.0 安全。
选择启用并单击应用。
在“安全启动”下,选择启用安全启动。
单击应用。 然后重新启动系统。
所有这些都是为了强调为什么您不应该为每次更新分配相同级别的风险。 在此示例中,安装更新并触发您不知道的 bootlocker 恢复密码请求造成的损害与正在修复的问题一样多,甚至更多。
微软必须承认并为触发副作用并警告用户的更新提供更多支持。 在已知问题部分记录问题是不够的——用户需要确保补丁不会损坏他们的系统。 在进行此类更新之前,应提示独立计算机上的用户输入 Bitlocker 恢复密钥,以确保他们拥有该密钥。 如果他们不能这样做,更新应该提示他们完成禁用 Bitlocker 或重置 Bitlocker 恢复密钥的过程。
补丁不应该受到伤害。 这不是安全启动补丁第一次引发额外的痛苦和损害,但它应该是最后一次。