Microsoft 宣布,使用传统的、不安全的安全哈希算法1(SHA-1)签名的多个 .NET 框架版本将在明年停止支持。
据 .NET 首席工程经理 Jamshed Damkewala 表示,.NET 框架 4.5.2、4.6 和 4.6.1 将在 2022 年 4 月 26 日后停止支持,届时不再为这些版本提供包括安全修复或技术支持在内的更新。唯一的例外是 Windows 10 Enterprise LTSC 2015 内置的 .NET Framework 4.6 版本,它的支持将延长到 2025 年 10 月,即该操作系统达到其终点时。
此外,文中还建议 .NET 开发人员在 2022 年 4 月 26 日之前将其应用程序至少迁移到 .NET 框架 4.6.2 或更高版本,以继续接受安全更新和技术支持。4.6.2 和 4.8 都是稳定的版本,并具有良好的兼容性,如果应用程序是使用 .NET 框架 4-4.6.1 构建的,在大多数情况下,它都可以继续在 4.6.2 及之后的版本上运行,而不需要重新编译或重新定位。
此举的原因是这些版本都是用使用传统的 SHA-1 加密散列算法的证书进行数字签名的,而这种算法现在被证明是不安全的,攻击者能够通过 SHA-1 的漏洞伪造数字证书来冒充公司或网站。在 Windows 更新的签名改为使用 SHA-2 算法后,微软下载中心于 2020 年 8 月下架了所有 Windows 签名的 SHA-1 内容。并且,从下个月的 5 月 9 日开始,所有主要的微软服务和程序(包括代码签名、文件散列和 TLS 证书)将完全使用 SHA-2 算法。
不过,尽管微软官方内容只支持 SHA-2 签名,但使用手动安装的企业整数或自签名的 SHA-1 证书签名的 Windows 可执行文件仍然可以在操作系统中运行。