本文讨论了一个问题:在安装了 UEFI CA 2023 签名启动加载程序的 Windows 10 设备上,进行 Windows 11 版本 23H2 的原位升级失败并回滚。
症状
请考虑以下方案:
- 你有一个 Windows 10 设备,它使用 UEFI CA 2023 签名的启动加载程序,该启动加载程序是在 2024 年 7 月 9 日或 2024 年 7 月 9 日之后更新中提供的。
- 通过使用 Windows 更新(或从 Windows 更新下载的媒体)执行就地升级,将设备从 Windows 10 升级到 Windows 11 版本 23H2。
升级到达 OOBE 重启阶段后,升级失败,回滚到 Windows 10,并生成以下错误代码之一:
- 0x80092003(CRYPT_E_FILE_ERROR)
- 0x000000c1
如果使用最新的 Windows 11 23H2 ISO 映像作为源媒体升级设备,则升级成功。 同样,如果使用 Windows 11 安装助手将设备升级到 Windows 11 24H2,则升级成功。
原因
2024 年 7 月 9 日或之后发布的 Windows 更新包含对公开披露的安全启动安全功能绕过的保护。 这些更新安装 UEFI CA 2023 签名的启动加载程序,%systemdrive%\bootmgfw_2023.efi。 有关此漏洞及其修复的详细信息,请参阅以下文章:
之所以出现问题,是因为此文件不是原始 Windows 11 23H2 升级媒体或安全 OS 动态更新(SafeOS DU)媒体的一部分。 升级过程在验证或更新启动文件时使用 Windows 恢复环境(WinRE)。 由于设备上的启动加载程序比 Windows 11 升级介质中的启动加载程序更新,因此升级过程无法在 %systemroot%~BT\Sources\Rollback\EFI\Microsoft\Recovery 下更新 WinRE 映像上的启动信息。 因此,升级失败并回滚。
此问题不会影响最新版本的 Windows 11 版本 23H2 媒体;Windows 11 版本 24H2 媒体;或更高版本的媒体。
决议
此问题的修补程序于 2025 年 2 月 11 日发布。 若要在就地升级期间实现此修补程序,请使用以下方法之一:
-
直接升级到 Windows 11 版本 24H2 或更高版本。 使用 Windows Update 或在 2025 年 2 月 11 日之后创建的媒体。
-
升级到最新版本的 Windows 11 版本 23H2。 使用在 2025 年 2 月 11 日之后创建的 Windows 更新或媒体。
-
如果必须升级到早期版本的 Windows 11,请使用以下方法之一:
- 在升级过程中,请允许设备连接到 Windows 更新,以自动下载并安装 KB5052424:适用于 Windows 11 版本 22H2 和 23H2 的安全操作系统动态更新:2025 年 2 月 11 日 - 微软支持。
- 修改安装媒体映像以集成KB5052424更新。