应用对象
.NET

重要说明

此更新最初发布于 2024 年 7 月 9 日的安全与质量汇总中。  此更新包含在日期为 2025 年 7 月 8 日的安全和质量汇总中。  2025 年 7 月 8 日发布的此更新没有变化。  如果你之前已经安装了此更新,则无需执行任何操作。

修订于 2024 年 7 月 30 日: 将中断性变更信息添加到已知问题部分。 

适用于:

Microsoft .NET Framework 3.5 SP1

                提醒 Windows Server 2008 R2 SP1 已结束主流支持,现处于扩展安全更新 (ESU) 支持中。

从 2020 年 7 月开始,此操作系统将不再有可选的非安全版本(即“C”版本)。 扩展支持的操作系统仅具有每月累积安全更新(即“B”或“更新星期二”版本)。

安装此更新前,请确认已安装如何获取此更新部分列出的必需更新。 

已购买这些操作系统本地版本的扩展安全更新 (ESU) 的客户必须遵循 KB4522133 中的流程,才能在 2020 年 1 月 14 日扩展支持终止后继续接收安全更新。 有关 ESU 及受支持版本的更多信息,请参阅 KB4497181。 有关详细信息,请参阅 ESU 博客文章

适用于 Windows Server 2008 SP2 的 2024 年 7 月 9 日更新包括 .NET Framework 3.5 SP1 安全性和可靠性改进。 我们建议你将此更新作为定期维护工作的一部分进行应用。 安装此更新前,请确认已安装如何获取此更新部分列出的必需更新。

摘要

安全改进

CVE-2024-38081 - .NET Framework 特权提升漏洞 此安全更新解决了 CVE-2024-38081 中详细说明的远程代码执行漏洞。

质量与可靠性改进

此更新中没有新的质量和可靠性改进。

有关此更新的其他信息

下列文章包含此更新针对具体产品版本的其他信息。

  • 5062158 Windows Server 2008 SP2 .NET Framework 2.0、3.0、3.5 SP1、4.6.2 安全和质量汇总的说明 (KB5062158)

此更新中的已知问题

中断性变更详细信息

2024 年 7 月安全和质量汇总 - .NET Framework 发布的 .NET Framework 服务更新包含一个安全修补程序,该修补程序解决了 CVE 2024-38081 中详述的特权提升漏洞。 该修补程序更改了 System.IO.Path.GetTempPath 方法的返回值。 如果 Windows 版本公开 GetTempPath2 Win32 API,则此方法会调用该 API 并返回解析后的路径。 有关如何执行此解析的详细信息,包括如何通过使用环境变量来控制返回值,请参阅 GetTempPath2 文档的“备注”部分。 GetTempPath2 API 可能并非在所有版本的 Windows 上都可用。

GetTempPath 和 GetTempPath2 Win32 API 之间一个可观察到的区别在于,它们为 SYSTEM 和非 SYSTEM 进程返回不同的值。 从作为 SYSTEM 运行的进程调用此函数时,它将返回非 SYSTEM 进程无法访问的路径 %WINDIR%\SystemTemp。 SYSTEM 进程的此返回值无法由环境变量替代。 对于非 SYSTEM 进程,GetTempPath2 的行为将与 GetTempPath 相同,从而遵循相同的环境变量来替代返回值。

在某些情况下,可以使用环境变量或其他方式将 Temp 文件夹重定向到其他文件夹。 有关此行为的最新信息,请参阅 GetTempPath2 Win32 API的官方文档。

有关详细信息,请参阅 System.IO.Path.GetTempPath API

临时解决方法

⚠️ 警告:选择退出将禁用 CVE 2024-38081 中详述的特权提升漏洞的安全修补程序。 选择退出只能作为确定软件在安全环境中运行时的临时解决方法。 Microsoft 不建议应用此临时解决方法。

解决方法

更改 API 行为是为了解决特权提升漏洞。 任何受影响的软件或应用程序都应修改代码,以适应这种新的设计更改。

如何获取此更新

安装此更新前

先决条件:

要应用此更新,必须安装 .NET Framework 3.5 SP1。

在安装最新汇总之前,你必须安装列出的以下更新,并重启设备。 安装这些更新可提高更新过程的可靠性,以便在安装汇总和应用 Microsoft 安全修补程序时缓解潜在的问题。

  1. 2019 年 4 月 9 日服务栈更新 (SSU) (KB4493730)。 若要获取此 SSU 的独立程序包,请在 Microsoft 更新目录中进行搜索。 安装仅 SHA-2 签名的更新时,需要此更新。

  2. 2019 年 10 月 8 日发布的最新 SHA-2 更新 (KB4474419) 或较新版本的更新。 如果你使用的是 Windows 更新,则将自动为你提供最新的 SHA-2 更新。 安装仅 SHA-2 签名的更新时,需要此更新。 有关 SHA-2 更新的更多信息,请参阅针对 Windows 和 WSUS 的 2019 SHA-2 代码签名支持要求

  3. 若要获取此安全更新,必须重新安装适用于 Windows Server 2008 SP2 的“扩展安全更新 (ESU) 许可准备包” (KB5016891) ,日期为 2022 年 8 月 8 日,即使之前已安装了 ESU 密钥也是如此。 将从 WSUS 为你提供 ESU 许可准备程序包。 若要获取 ESU 许可准备程序包的独立程序包,请在 Microsoft 更新目录中进行搜索。

  4. 安装完上述各项后,我们强烈建议你安装最新的 SSU。 对于 Windows Server 2008 SP2,必须安装日期为 2022 年 7 月 12 日或更晚的服务堆栈更新 (SSU) (KB5016129)。 有关最新 SSU 更新的详细信息,请参阅 ADV990001 | 最新的服务堆栈更新 如果使用的是 Windows 更新,则将自动为你提供最新的 SSU(如果你是 ESU 客户)。 要获取最新 SSU 的独立程序包,请在 Microsoft 更新目录中进行搜索。 有关 SSU 的一般信息,请参阅服务堆栈更新服务堆栈更新 (SSU):常见问题解答

  5. VLSC 门户下载 ESU MAK 加载项密钥,然后部署激活 ESU MAK 加载项密钥。 如果使用批量激活管理工具 (VAMT) 部署和激活密钥,请按照此处的说明进行操作。

    重要说明 部署以下项不需要额外密钥:

    • 你无需为 Azure 虚拟机 (VM)、Azure Stack HCI 版本 21H2 及更高版本部署额外的 ESU 密钥。

    • 对于其他 Azure 产品,例如 Azure VMWare、Azure Nutanix 解决方案 Azure Stack(Hub、Edge),或对于 Azure 上的自带映像(适用于 Windows Server 2008 SP2),需要部署 ESU 密钥。  第四年安装、激活和部署 ESU 的步骤相同。

安装此更新

发布频道

可用

下一步

Windows Update 和 Microsoft Update

无。 如果你是 ESU 客户,此更新会通过 Windows 更新自动下载并安装。

Microsoft 更新目录

要获取此更新的独立程序包,请转到 Microsoft 更新目录网站。

Windows Server Update Services (WSUS)

如果适用,将通过应用操作系统更新来安装此单独的 .NET Framework 产品更新。 有关操作系统更新的详细信息,请参阅有关此更新的更多信息部分。

重启要求

如果正在使用任何受影响的文件,可能需要在应用此更新后重启计算机。 我们建议你退出所有基于 .NET Framework 的应用程序,然后再应用此更新。

更新部署信息

有关此安全更新的部署详细信息,请参阅 Microsoft 安全响应中心 (MSRC) 安全更新指南的“部署”选项卡

更新替换信息

此更新取代以前发布的更新 KB5037041KB5038291

文件信息

x86

文件名

文件版本

文件大小

日期

Time

x64

File name

文件版本

文件大小

日期

Time

如何获取此更新的相关帮助和支持

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。