更改日期 |
更改说明 |
2024 年 3 月 20 日 |
|
2024 年 3 月 21 日 |
|
2024 年 3 月 22 日 |
|
简介
本文是对将在 2024 年 4 月更新的以下文章的补充:
-
KB5025885:如何针对与 CVE-2023-24932 关联的安全启动更改管理 Windows 引导管理器吊销
此补充内容介绍了针对 CVE-2023-24932 跟踪的 BlackLotus UEFI 启动工具包部署新缓解措施的更新分步过程,并包括面向你的环境的测试指导。
为了帮助防止恶意滥用易受攻击的启动管理器,我们必须将新的 UEFI 安全启动签名证书部署到设备固件,并撤销对当前签名证书固件的信任。 执行此操作将导致已启用安全启动的设备不再信任所有现有的易受攻击的启动管理器。 本指南将帮助你完成该过程。
本指南中概述的三个缓解步骤如下所示:
-
更新数据库:新的 PCA (PCA2023) 证书将会添加到安全启动数据库,以支持设备启动由此证书签名的媒体。
-
安装启动管理器的安装:现有 PCA2011 签名的启动管理器将替换为 PCA2023 签名的启动管理器。两个启动管理器都包含在 2024 年 4 月安全更新中。
-
DBX 吊销 PCA2011: 拒绝条目将会添加到安全启动 DBX,从而阻止使用 PCA2011 签名的启动管理器启动。
注意 应用这三种缓解措施的服务堆栈软件不允许乱序应用缓解措施。
这是否适用于我?
本指南适用于启用了安全启动的任何设备以及这些设备的所有现有恢复媒体。
如果设备运行的是 Windows Server 2012 或 Windows Server 2012 R2,请务必先阅读“已知问题”部分,然后再继续操作。
开始之前
启用可选诊断数据
请通过执行以下步骤启用“发送可选诊断数据”设置:
-
在 Windows 11 中,转到“开始 > 设置 > 隐私和安全 > 诊断和反馈”。
-
启用“发送可选诊断数据”。
有关详细信息,请参阅 Windows 中的诊断、反馈和隐私。
注释 请确保在验证期间和验证后的一段时间内具有 Internet 连接。
执行测试传递
安装 2024 年 4 月 Windows 更新后,在完成选择加入的步骤之前,请确保通过测试传递来验证系统的完整性:
-
VPN: 验证 VPN 对公司资源和网络的访问是否正常。
-
Windows Hello: 使用正常过程(人脸/指纹/PIN)登录到 Windows 设备。
-
BitLocker: 系统在启用 BitLocker 的系统上正常启动,并且在启动期间没有任何 BitLocker 恢复提示。
-
设备运行状况证明:验证依赖设备运行状况证明的设备是否正确证明其状态。
已知问题
仅适用于 Windows Server 2012 和 Windows Sever 2012 R2:
-
由于 TPM 度量的已知兼容性问题,基于 TPM 2.0 的系统无法部署 2024 年 4 月安全补丁中发布的缓解措施。 2024 年 4 月更新将阻止受影响系统上的缓解措施 #2(启动管理器)和 #3(DBX 更新)。
-
Microsoft 已意识到此问题,将来将发布更新以取消阻止基于 TPM 2.0 的系统。
-
要检查 TPM 版本,请右键单击“开始”,单击 “运行”,然后键入 tpm.msc。 在“TPM 制造商信息”下的中心窗格右下方,应会看到“规范版本”的值。
选择加入验证步骤
本文的其余部分讨论了如何测试选择加入缓解措施的设备。 默认情况下不启用缓解措施。 如果企业计划启用这些缓解措施,请运行以下验证步骤来验证设备兼容性。
-
部署 2024 年 4 月预发布安全更新。
-
打开管理员命令提示符,并设置注册表项以通过键入以下命令对数据库执行更新,然后按 Enter:
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Secureboot /v AvailableUpdates /t REG_DWORD /d 0x40 /f
-
重启设备两次。
-
通过确保以下命令返回 True 来验证数据库是否已成功更新。 以管理员身份运行以下 PowerShell 命令:
[System.Text.Encoding]::ASCII.GetString((Get-SecureBootUEFI db).bytes) -match 'Windows UEFI CA 2023'
-
打开管理员命令提示符,并设置注册表项以下载和安装 PCA2023 签名的启动管理器:
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Secureboot /v AvailableUpdates /t REG_DWORD /d 0x100 /f
-
重启设备两次。
-
以管理员身份装载 EFI 分区,以做好检查准备:
mountvol s: /s
-
验证 “s:\efi\microsoft\boot\bootmgfw.efi” 是否由 PCA2023 签名。 为此,请按以下步骤操作:
-
单击“开始”,在“搜索”框中键入命令提示符,然后单击“命令提示符”。
-
在命令提示符窗口中,键入下列命令,然后按 Enter。
copy S:\EFI\Microsoft\Boot\bootmgfw.efi c:\bootmgfw_2023.efi
-
在文件管理器中,右键单击文件 C:\bootmgfw_2023.efi,单击“属性”,然后选择 “数字签名” 选项卡。
-
在“签名”列表中,确认证书链包含 Windows UEFI 2023 CA。
-
警告: 此步骤会将 DBX 吊销部署到通过使用 Windows 生产 PCA2011 签名的不受信任的旧启动管理器。应用此吊销的设备将不再从没有更新后启动管理器组件的现有恢复媒体和网络启动 (PXE/HTTP) 服务器启动。
如果设备 进入不可启动状态,请按照“恢复和还原过程”部分中的步骤将设备重置为预吊销状态。
应用 DBX 后,如果要将设备恢复到其以前的安全启动状态,请按照“恢复和还原过程”部分操作。
应用 DBX 缓解措施,以在安全启动中取消信任 Windows 生产 PCA2011 证书:
-
打开管理员命令提示符,并设置注册表项以将 PCA2011 的吊销放置于 DBX 中:
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Secureboot /v AvailableUpdates /t REG_DWORD /d 0x80 /f
-
重启设备两次,并确认设备已完全重启。
-
验证 DBX 缓解措施是否已成功应用。 为此,请以管理员身份运行以下 PowerShell 命令,并确保该命令返回 True:
[System.Text.Encoding]::ASCII.GetString((Get-SecureBootUEFI dbx).bytes) -match 'Microsoft Windows Production PCA 2011'
或在事件查看器中查找以下事件:
事件日志
系统
事件源
TPM-WMI
事件 ID
1037
级别
信息
事件消息文本
已成功应用安全启动 Dbx 更新以撤销 Microsoft Windows 生产 PCA 2011
-
从“开始之前”部分执行测试传递项,并确保所有系统正常运行。
注册表项参考
命令 |
用途 |
备注 |
|
安装 DB 更新以允许使用 PCA2023 签名的启动管理器 |
命令 |
用途 |
备注 |
|
安装 PCA2023 签名的 bootmgr |
仅在完成 0x40 步骤后才遵循值 |
命令 |
用途 |
备注 |
|
安装吊销 PCA2011 的 DBX 更新 |
仅在完成 0x40 和 0x100 两个步骤后才遵循值 |
结果和反馈
通过测试结果、问题和反馈向 suvp@microsoft.com 发送电子邮件。
恢复和还原过程
执行恢复过程时,请与 Microsoft 共享以下数据:
-
观察到的启动失败屏幕截图。
-
所执行的导致设备不可启动的步骤。
-
设备配置的详细信息。
执行还原过程时,请在启动该过程之前挂起 BitLocker。
如果在此过程中出现问题,并且无法启动设备或需要从外部媒体启动(例如,拇指驱动器或 PXE 启动),请尝试以下过程。
-
关闭安全启动
此过程因电脑制造商和型号会有所不同。 进入电脑 UEFI BIOS 菜单,导航到“安全启动”设置并将其关闭。 有关此过程的具体信息,请查看电脑制造商提供的文档。 有关详细信息,请参阅禁用安全启动。 -
清除安全启动密钥
如果设备支持清除安全启动密钥或将安全启动密钥重置为出厂默认设置,请立即执行此操作。
你的设备应立即启动,但请注意,它容易受到启动工具包恶意软件的攻击。 请确保在此恢复过程结束时完成步骤 5,以重新启用安全启动。 -
尝试从系统磁盘启动 Windows。
-
如果已启用 BitLocker 并进入恢复状态,请输入 BitLocker 恢复密钥。
-
登录到 Windows。
-
从管理员命令提示符运行以下命令,以还原 EFI 系统启动分区中的启动文件:
Mountvol s: /s del s:\EFI\Microsoft\*.* /f /s /q bcdboot %systemroot% /s S:
-
运行 BCDBoot 应返回“已成功创建启动文件”。
-
如果已启用 BitLocker,请挂起 BitLocker。
-
重启设备。
-
-
如果步骤 3 未成功恢复设备,请重新安装 Windows。
-
从现有恢复媒体开始。
-
继续使用恢复媒体安装 Windows。
-
登录到 Windows。
-
重启以验证设备是否已成功启动到 Windows。
-
-
重新启用安全启动并重启设备。
进入“服务 UEFI”菜单,导航到“安全启动”设置并将其打开。 有关此过程的具体信息,请查看设备制造商提供的文档。 有关详细信息,请参阅重新启用安全启动。 -
如果 Windows 启动继续失败,请再次进入 UEFI BIOS 并关闭安全启动。
-
启动 Windows。
-
与 Microsoft 共享 DB、DBX 的内容。
-
在管理员模式下打开 PowerShell。
-
捕获数据库:
Get-SecureBootUEFI -name:db -OutputFilePath DBUpdateFw.bin
-
捕获 DBX:
Get-SecureBootUEFI -name:dbx –OutputFilePath dbxUpdateFw.bin
-
共享步骤 8b 和 8c 中生成的文件 DBUpdateFw.bin 和 dbxUpdateFw.bin。
-