摘要
为了帮助保护 Windows 操作系统的安全性,以前已使用 SHA-1 (SHA-2 哈希算法对更新进行了签名) 。 签名用于验证更新是否直接来自 Microsoft,且在交付过程中未被篡改。 由于 SHA-1 算法中的缺点和符合行业标准,我们已更改 Windows 更新的签名,以独占方式使用更安全的 SHA-2 算法。 从 2019 年 4 月到 2019 年 9 月,此更改是分阶段进行 (请参阅"产品更新计划"部分,了解有关产品更新) 。
运行旧版 OS 版本 (Windows 7 SP1、Windows Server 2008 R2 SP1 和 Windows Server 2008 SP2) 的客户需在设备上安装 SHA-2 代码签名支持,才能安装 2019 年 7 月或之后发布的更新。 任何不支持 SHA-2 的设备将无法在 2019 年 7 月当天或之后安装 Windows 更新。 为了帮助你为此更改做好准备,我们发布了从 2019 年 3 月开始对 SHA-2 登录的支持,并进行了增量改进。 Windows Server Update Services (WSUS) 3.0 SP2 将接收 SHA-2 支持,以安全交付 SHA-2 签名的更新。 有关仅 SHA-2 迁移时间线,请参阅"产品更新计划"部分。
背景详细信息
安全哈希算法 1 (SHA-1) 开发为不可逆哈希函数,广泛用于代码签名。 遗憾的是,SHA-1 哈希算法的安全性随着时间而变得不太安全,因为算法存在漏洞、处理器性能提高以及云计算的出现。 安全哈希算法 2 和 SHA-2 (等更强的替代) 现在强烈建议使用,因为它们不会遇到相同的问题。 有关 SHA-1 弃用详细信息,请参阅 哈希和签名算法。
产品更新计划
从 2019 年初开始,到 SHA-2 支持的迁移过程将分阶段开始,支持将在独立更新中提供。 Microsoft 将针对以下计划提供 SHA-2 支持。 请注意,以下时间线可能会更改。 我们将根据需要继续更新此页面。
目标日期 |
事件 |
适用于 |
2019 年 3 月 12 日 |
Windows 7 SP1 Windows Server 2008 R2 SP1 |
|
2019 年 3 月 12 日 |
独立更新 KB4484071 在支持交付 SHA-2 签名更新的 WSUS 3.0 SP2 的 Windows 更新目录中提供。 对于使用 WSUS 3.0 SP2 的客户,不应晚于 2019 年 6 月 18 日手动安装此更新。 |
WSUS 3.0 SP2 |
2019 年 4 月 9 日 |
独立更新 KB4493730引入了对服务堆栈的 SHA-2 代码签名支持 (SSU) 作为安全更新发布。 |
Windows Server 2008 SP2 |
2019 年 5 月 14 日 |
独立安全更新 KB4474419 发布,引入了 SHA-2 代码签名支持。 |
Windows Server 2008 SP2 |
2019 年 6 月 11 日 |
独立安全更新 KB4474419重新发布,添加了缺少的 MSI SHA-2 代码签名支持。 |
Windows Server 2008 SP2 |
2019 年 6 月 18 日 |
Windows 10 更新签名从双 (SHA-1/SHA-2) 更改为仅 SHA-2。 无需客户操作。 |
Windows 10 版本 1709 Windows 10 版本 1803 Windows 10 版本 1809 Windows Server 2019 |
2019 年 6 月 18 日 |
必填: 对于使用 WSUS 3.0 SP2 的客户,必须在此日期之前手动安装 KB4484071, 以支持 SHA-2 更新。 |
WSUS 3.0 SP2 |
2019 年 7 月 9 日 |
必填: 旧 Windows 版本的更新需要安装 SHA-2 代码签名支持。 (KB4493730 和KB4474419) 年 4 月和 5 月发布的支持是必需的,才能继续接收这些版本的 Windows 的更新。 目前,所有旧版 Windows 更新签名都从 SHA1 和双 (SHA-1/SHA-2) 更改为 SHA-2。 |
Windows Server 2008 SP2 |
2019 年 7 月 16 日 |
Windows 10 更新签名从双 (SHA-1/SHA-2) 更改为仅 SHA-2。 无需客户操作。 |
Windows 10,版本 1507 Windows 10 版本 1607 Windows Server 2016 Windows 10 版本 1703 |
2019 年 8 月 13 日 |
必填: 旧 Windows 版本的更新需要安装 SHA-2 代码签名支持。 (年 3 月 发布的支持需要 KB4474419 和 KB4490628) 才能继续接收这些版本的 Windows 的更新。 如果有使用 EFI 启动的设备或 VM,请参阅常见问题解答部分,了解防止设备无法启动的问题的其他步骤。 目前,所有旧版 Windows 更新签名都从 SHA-1 和双 (SHA-1/SHA-2) 更改为 SHA-2。 |
Windows 7 SP1 Windows Server 2008 R2 SP1 |
2019 年 9 月 10 日 |
旧版 Windows 更新签名从 (SHA-1/SHA-2) 更改为仅 SHA-2。 无需客户操作。 |
Windows Server 2012 Windows 8.1 Windows Server 2012 R2 |
2019 年 9 月 10 日 |
独立安全更新 KB4474419已重新发布,添加了缺失的 EFI 启动管理器。 请确保已安装此版本。 |
Windows 7 SP1 Windows Server 2008 R2 SP1 Windows Server 2008 SP2 |
2020 年 1 月 28 日 |
Microsoft 受信任根程序的证书信任列表 (CTL) 上的签名从 双签名 (SHA-1/SHA-2) 更改为仅 SHA-2。 无需客户操作。 |
所有受支持的 Windows 平台 |
2020 年 8 月 |
基于 Windows Update SHA-1 的服务终结点已停用。 这仅影响尚未使用适当安全更新更新的较旧 Windows 设备。 有关详细信息,请参阅KB4569557。 |
Windows 7 Windows 7 SP1 Windows Server 2008 Windows Server 2008 SP2 Windows Server 2008 R2 Windows Server 2008 R2 SP1 |
2020 年 8 月 3 日 |
Microsoft 从 Microsoft 下载中心停用了针对安全哈希算法 1 (SHA-1) Windows 签名的内容。 有关详细信息,请参阅将于 2020年 8 月 3 日停用的 Windows IT 专业人员博客 SHA-1 Windows 内容。 |
Windows Server 2000 Windows XP Windows Server 2003 Windows Vista Windows Server 2008 Windows 7 Windows Server 2008 R2 Windows 8 Windows Server 2012 Windows 8.1 Windows Server 2012 R2 Windows 10 Windows 10 服务器 |
当前状态
Windows 7 SP1 和 Windows Server 2008 R2 SP1
安装 2019 年 8 月 13 日或更高版本发布的任何更新之前,必须安装以下必需的更新,然后重新启动设备。 所需的更新可以按任何顺序安装,并且不需要重新安装,除非有新版本的所需更新。
-
服务堆栈更新 (SSU) (KB4490628) 。 如果使用 Windows 更新,系统会自动提供所需的 SSU。
-
SHA-2 更新 (KB4474419) 2019 年 9 月 10 日发布。 如果使用 Windows 更新,系统会自动提供所需的 SHA-2 更新。
重要说明安装所有必需的更新后,必须先重启设备,然后才能安装任何每月汇总、仅安全性更新、每月汇总预览或独立更新。
Windows Server 2008 SP2
安装 2019 年 9 月 10 日或更高版本发布的任何汇总之前,必须安装以下更新,然后重新启动设备。 所需的更新可以按任何顺序安装,并且不需要重新安装,除非有新版本的所需更新。
-
服务堆栈更新 (SSU) (KB4493730) 。 如果使用 Windows 更新,系统会自动提供所需的 SSU 更新。
-
2019 年 9 月 10 (KB4474419) SHA-2 更新。 如果使用 Windows 更新,系统会自动提供所需的 SHA-2 更新。
重要说明安装所有必需的更新后,必须先重启设备,然后才能安装任何每月汇总、仅安全性更新、每月汇总预览或独立更新。
常见问题解答
一般信息、规划和问题防护
SHA-2 代码签名支持是提前交付的,以确保大多数客户在 Microsoft 更改 SHA-2 以更新这些系统之前就获得支持。 独立更新包括一些额外的修补程序,并且正在提供这些修补程序,以确保所有 SHA-2 更新都使用少量易于识别的更新。 Microsoft 建议维护这些操作系统的系统映像的客户将这些更新应用到映像。
从 WSUS 4.0 on Windows Server 2012 开始,WSUS 已支持 SHA 2 签名的更新,并且这些版本不需要客户操作。
只有 WSUS 3.0 SP2 需要 安装 KB4484071才能支持仅 SHA2 签名的更新。
假设运行 Windows Server 2008 SP2。 如果使用 Windows Server 2008 R2 SP1/Windows 7 SP1 进行双启动,则此类型的系统的启动管理器来自 Windows Server 2008 R2/Windows 7 系统。 若要成功更新这两个系统以使用 SHA-2 支持,必须先更新 Windows Server 2008 R2/Windows 7 系统,以便启动管理器更新为支持 SHA-2 的版本。 然后,更新支持 SHA-2 的 Windows Server 2008 SP2 系统。
与双启动方案类似,Windows 7 PE 环境必须更新为 SHA-2 支持。 然后,必须将 Windows Server 2008 SP2 系统更新为 SHA-2 支持。
-
在安装 2019 年 8 月 13 日或更高版本更新之前,运行 Windows 安装至完成并启动到 Windows
-
打开管理员命令提示符窗口 ,运行 bcdboot.exe。 这会从 Windows 目录复制启动文件并设置启动环境。 有关详细信息 ,请参阅 BCDBoot Command-Line 选项。
-
安装任何其他更新之前,请安装 2019 年 8 月 13 日重新发布的 KB4474419和KB4490628 for Windows 7 SP1 和 Windows Server 2008 R2 SP1。
-
重新启动操作系统。 需要重启
-
安装任何剩余的更新。
-
在磁盘上安装映像并启动到 Windows。
-
在命令提示符下, 运行 bcdboot.exe。 这会从 Windows 目录复制启动文件并设置启动环境。 有关详细信息 ,请参阅 BCDBoot Command-Line 选项。
-
安装任何其他更新之前,请安装 2019 年 9 月 23 日重新发布的 KB4474419和KB4490628 for Windows 7 SP1 和 Windows Server 2008 R2 SP1。
-
重新启动操作系统。 需要重启
-
安装任何剩余的更新。
Windows 10 版本 1903 支持 SHA-2,因为它已发布,并且所有更新已仅对 SHA-2 进行签名。 此版本的 Windows 不需要任何操作。
问题恢复
如果看到错误0xc0000428消息"Windows 无法验证此文件的数字签名。 最近的硬件或软件更改可能安装了签名错误或损坏的文件,或者可能是来自未知来源的恶意软件。" 请按照以下步骤进行恢复。
-
使用恢复媒体启动操作系统。
-
安装任何其他更新之前,使用适用于 Windows 7 SP1 和 Windows Server 2008 R2 SP1 的部署映像服务和管理 (DISM) 安装日期为 2019 年 9 月 23 日或更高版本的更新KB4474419。
-
在命令提示符下, 运行 bcdboot.exe。 这会从 Windows 目录复制启动文件并设置启动环境。 有关详细信息 ,请参阅 BCDBoot Command-Line 选项。
-
重新启动操作系统。
-
停止部署到其他设备,不要重启任何尚未重启的设备或 VM。
-
使用 2019 年 8 月 13 日或更高版本发布的更新识别重新启动挂起的设备和 VM,并打开提升的命令提示符
-
使用更新的 KB 编号通过以下命令查找要删除的更新的包标识 (请将 4512506 替换为目标 KB 编号(如果不是 2019 年 8 月 13 日发布的每月汇总) :dism /online /get-packages | findstr 4512506)
-
使用以下命令删除更新,将<包标识>替换为在上一命令中发现的内容:Dism.exe /online /remove-package /packagename:<包标识>
-
现在,需要安装"如何获取正在尝试安装的更新的此更新"部分中列出的所需更新,或安装本文"当前状态"部分中列出的所需更新。
注意当前收到错误或正在恢复0xc0000428的任何设备或 VM,都需要按照常见问题解答中的步骤操作,0xc0000428。
如果遇到这些错误,需要安装"如何获取正在尝试安装的更新的此更新"部分中列出的所需更新,或安装本文"当前状态"部分中列出的上述所需更新。
如果看到错误0xc0000428消息"Windows 无法验证此文件的数字签名。 最近的硬件或软件更改可能安装了签名错误或损坏的文件,或者可能是来自未知来源的恶意软件。" 请按照以下步骤进行恢复。
-
使用恢复媒体启动操作系统。
-
使用适用于 Windows 7 SP1 和 Windows Server 2008 R2 SP1 的部署映像服务和管理 (DISM) 安装 2019 年 8 月 13 日或之后发布的最新 SHA-2 更新 (KB4474419) 。
-
重新启动到恢复媒体。 需要重启
-
在命令提示符下, 运行 bcdboot.exe。 这会从 Windows 目录复制启动文件并设置启动环境。 有关详细信息,请参阅 BCDBoot Command-Line选项。
-
重新启动操作系统。
如果遇到此问题,可以通过打开命令提示符窗口并运行以下命令来安装更新 (将 <msu 位置> 占位符替换为更新文件的实际位置和文件名) :
wusa.exe <msu 位置> /quiet
此问题在 2019 年 10 月 8 日发布的 KB4474419中得到解决。 此更新将自动从 Windows 更新和 Windows Server Update Services (WSUS) 。 如果需要手动安装此更新,则需要使用上述解决方法。
注意如果以前安装了 2019 年 9 月 23 日发布的 KB4474419,则已拥有此更新的最新版本,无需重新安装。