Applies ToWindows Server 2008 Datacenter ESU Windows Server 2008 Standard ESU Windows Server 2008 Enterprise ESU Windows Server 2008 R2 Enterprise ESU Windows Server 2008 R2 Standard ESU Windows Server 2008 R2 Datacenter ESU Windows Server 2012 ESU Windows Server 2012 R2 ESU Windows 10, version 1607, all editions Windows Server 2016 Windows 10 Home and Pro, version 21H2 Windows 10 Enterprise and Education, version 21H2 Windows 10 IoT Enterprise, version 21H2 Windows 10 Home and Pro, version 22H2 Windows 10 Enterprise Multi-Session, version 22H2 Windows 10 Enterprise and Education, version 22H2 Windows 10 IoT Enterprise, version 22H2 Windows 11 SE, version 21H2 Windows 11 Home and Pro, version 21H2 Windows 11 Enterprise and Education, version 21H2 Windows 11 IoT Enterprise, version 21H2 Windows 11 SE, version 22H2 Windows 11 Home and Pro, version 22H2 Windows 11 Enterprise Multi-Session, version 22H2 Windows 11 Enterprise and Education, version 22H2 Windows 11 IoT Enterprise, version 22H2 Windows Server 2022 Windows 11 Home and Pro, version 23H2 Windows 11 Enterprise and Education, version 23H2 Windows 11 Enterprise Multi-Session, version 23H2 Windows 11 IoT Enterprise, version 23H2 Windows 11 SE, version 24H2 Windows 11 Enterprise and Education, version 24H2 Windows 11 Enterprise Multi-Session, version 24H2 Windows 11 Home and Pro, version 24H2 Windows 11 IoT Enterprise, version 24H2

重要说明 某些版本的 Microsoft Windows 已终止支持。 注意:当扩展安全更新 (ESU) 可用时,某些版本的 Windows 可能会在最新的操作系统终止日期之后得到支持。 有关提供 ESU 的产品列表,请参阅 生命周期常见问题解答 - 扩展安全更新

更改日期

更改说明

2024 年 8 月 1 日

  • 为提高可读性而对格式进行的小改动

  • 在“客户端上所有 Access-Request 数据包中配置 Message-Authenticator 属性的验证”配置中,使用了“message”一词,而不是“packet”

2024 年 8 月 5 日

  • 添加了用户数据报协议 (UDP) 链接

  • 为网络策略服务器 (NPS) 添加了链接

2024 年 8 月 6 日

  • 更新了“摘要”部分,以指示这些更改包含在 2024 年 7 月 9 日或之后的 Windows 更新中

  • 更新了“执行操作”部分中的项目符号点,以指示我们建议打开选项。 默认情况下,这些选项处于关闭状态。

  • 向“此更新添加的事件”部分添加了注释,以指示事件 ID 由 2024 年 7 月 9 日或之后的 Windows 更新添加到 NPS 服务器

Contents

摘要

2024 年 7 月 9 日或之后的 Windows 更新解决了与MD5 冲突问题相关的远程身份验证拨入用户服务 (RADIUS) 协议中的安全漏洞。 由于 MD5 中的完整性检查较弱,攻击者可能会篡改数据包以获取未经授权的访问权限。 MD5 漏洞使得 Internet 上基于用户数据报协议 (UDP) 的 RADIUS 流量在传输过程中对数据包伪造或修改不安全。 

有关此漏洞的详细信息,请参阅 CVE-2024-3596 和 白皮书 RADIUS 和 MD5 冲突攻击

注意 此漏洞需要对 RADIUS 网络和网络策略服务器 (NPS) 进行物理访问。 因此,具有安全 RADIUS 网络的客户不会受到攻击。 此外,当通过 VPN 进行 RADIUS 通信时,此漏洞不适用。 

采取操作

为了帮助保护环境,我们建议启用以下配置。 有关详细信息,请参阅“配置”部分。

  • Access-Request 数据包中设置 Message-Authenticator 属性。 确保所有 Access-Request 数据包都包含 Message-Authenticator 属性。 默认情况下,设置 Message-Authenticator 属性的选项处于关闭状态。 建议启用此选项。

  • 验证 Access-Request 数据包中的 Message-Authenticator 属性。 请考虑在 ess-Request 据包上强制验证 Message-Authenticator 属性。 不处理不含此属性的 Access-Request 数据包。 默认情况下,Access-Request 消息必须包含已关闭的消息验证器属性 选项。 建议启用此选项。

  • 如果存在 Proxy-State 属性,验证 Access-Request 数据包中的 Message-Authenticator 属性。 (可选)如果无法对每个 Access-Request 数据包强制验证 Message-Authenticator 属性,则启用 limitProxyState 选项。 limitProxyState 强制删除包含 代理状态 属性的 Access-Request 数据包,而不使用 Message-Authenticator 属性。 默认情况下,limitproxystate 选项处于关闭状态。 建议启用此选项。

  • 验证 RADIUS 响应数据包中的 Message-Authenticator 属性:Access-AcceptAccess-RejectAccess-Challenge。 启用 requireMsgAuth 选项,以强制删除远程服务器的 RADIUS 响应数据包,而不使用 Message-Authenticator 属性。 默认情况下,requiremsgauth 选项处于关闭状态。 建议启用此选项。

此更新添加的事件

有关详细信息,请参阅“配置”部分。

注意 这些事件 ID 由 2024 年 7 月 9 日或之后的 Windows 更新添加到 NPS 服务器。

Access-Request 数据包已删除,因为它包含 Proxy-State 属性,但缺少 Message-Authenticator 属性。 请考虑更改 RADIUS 客户端以包括 Message-Authenticator 属性。 或者,使用 limitProxyState 配置为 RADIUS 客户端添加异常。

事件日志

系统

事件类型

错误

事件源

NPS

事件 ID

4418

事件文本

从包含 Proxy-State 属性的 RADIUS 客户端 <ip/name> 接收到 Access-Request 消息,但它未包含 Message-Authenticator 属性。 因此,已删除该请求。 出于安全考虑,Message-Authenticator 属性是必需的。 请参阅 https://support.microsoft.com/help/5040268 了解详细信息。 

这是没有 Message-Authenticator 属性且存在 Proxy-StateAccess-Request 数据包的 审核事件。 请考虑更改 RADIUS 客户端以包括 Message-Authenticator 属性。 启用 limitproxystate 配置后,将删除 RADIUS 数据包。

事件日志

系统

事件类型

警告

事件源

NPS

事件 ID

4419

事件文本

从包含 Proxy-State 属性的 RADIUS 客户端 <ip/name> 接收到 Access-Request 消息,但它未包含 Message-Authenticator 属性。 当前允许请求,因为 limitProxyState 是在审核模式下进行配置。 请参阅 https://support.microsoft.com/help/5040268 了解详细信息。 

这是收到的 RADIUS 响应数据包的审核事件,代理中没有 Message-Authenticator 属性。 请考虑更改 Message-Authenticator 属性的指定 RADIUS 服务器。 启用 requiremsgauth 配置后,将删除 RADIUS 数据包。

事件日志

系统

事件类型

警告

事件源

NPS

事件 ID

4420

事件文本

RADIUS 代理从缺少 Message-Authenticator 属性的服务器 <ip/name> 收到响应。 当前允许响应,因为 requireMsgAuth 是在审核模式下进行配置。 请参阅 https://support.microsoft.com/help/5040268 了解详细信息。

如果未配置建议的设置,则在服务启动期间记录此事件。 如果 RADIUS 网络不安全,请考虑启用设置。 对于安全网络,可以忽略这些事件。

事件日志

系统

事件类型

警告

事件源

NPS

事件 ID

4421

事件文本

RequireMsgAuth 和/或 limitProxyState 配置处于 <Disable/Audit> 模式。 出于安全目的,应在“启用”模式下配置这些设置。 请参阅 https://support.microsoft.com/help/5040268 了解详细信息。

配置

此配置使 NPS 代理能够开始在所有 Access-Request 数据包中发送 Message-Authenticator 属性。 若要启用此配置,请使用以下方法之一。

方法 1:使用 NPS Microsoft 管理控制台 (MMC)

若要使用 NPS MMC,请执行以下步骤:

  1. 打开服务器上的 NPS 用户界面 (UI)。

  2. 打开远程 Radius 服务器组

  3. 选择 Radius 服务器

  4. 转到“身份验证/记帐”。

  5. 单击以选择“请求必须包含 Message-Authenticator 属性”复选框。

方法 2:使用 netsh 命令

若要使用 netsh,请运行以下命令:

netsh nps set remoteserver remoteservergroup = <server group name> address = <server address> requireauthattrib = yes

有关详细信息,请参阅 远程 RADIUS 服务器组命令

此配置需要所有 Access-Request 数据包中的 Message-Authenticator 属性,如果不存在,则删除数据包。

方法 1:使用 NPS Microsoft 管理控制台 (MMC)

若要使用 NPS MMC,请执行以下步骤:

  1. 打开服务器上的 NPS 用户界面 (UI)。

  2. 打开 Radius 客户端

  3. 选择 Radius 客户端

  4. 转到 高级设置

  5. 单击此项可选中“访问请求消息必须包含消息验证器属性”复选框。

有关详细信息,请参阅 配置 RADIUS 客户端

方法 2:使用 netsh 命令

若要使用 netsh,请运行以下命令:

netsh nps set client name = <client name> requireauthattrib = yes

有关详细信息,请参阅 远程 RADIUS 服务器组命令

此配置使 NPS 服务器能够删除可能易受攻击 Access-Request 数据包,这些数据包包含 Proxy-State 属性,但不包括 Message-Authenticator 属性。 此配置支持三种模式:

  • 审核

  • 启用

  • 禁用

审核 模式下,记录警告事件(事件 ID: 4419),但仍会处理该请求。 使用此模式标识发送请求的不符合实体。

使用 netsh 命令根据需要配置、启用和添加异常。

  1. 若要在 审核 模式下配置客户端,请运行以下命令:

    netsh nps set limitproxystate all = “审核”

  2. 若要在“启用”模式下配置客户端,请运行以下命令:

    netsh nps set limitproxystate all = “启用” 

  3. 若要添加异常以从 limitProxystate 验证中排除客户端,请运行以下命令:

    netsh nps set limitproxystate name = <客户端名称>异常 = “Yes” 

此配置使 NPS 代理可以删除没有 Message-Authenticator 属性的潜在易受攻击的响应消息。 此配置支持三种模式:

  • 审核

  • 启用

  • 禁用

在 审核 模式下,记录警告事件(事件 ID: 4420),但仍会处理该请求。 使用此模式标识发送响应的不符合实体。

使用 netsh 命令根据需要配置、启用和添加异常。

  1. 若要在 审核 模式下配置服务器,请运行以下命令:

    netsh nps set requiremsgauth all = "audit"

  2. 若要为所有服务器启用配置,请运行以下命令:

    netsh nps set requiremsgauth all = "enable"

  3. 若要添加异常以从 requireauthmsg 验证中排除服务器,请运行以下命令:

    netsh nps set requiremsgauth remoteservergroup = <远程服务器组名称> 地址 = <服务器地址> 异常 = “yes”

常见问题

检查相关事件的 NPS 模块事件。 请考虑为受影响的客户端/服务器添加异常或配置调整。

否,本文中讨论的配置建议用于不安全的网络。 

参考

用于描述 Microsoft 软件更新的标准术语说明

本文中提到的第三方产品由 Microsoft 以外的其他公司提供。 对于这些产品的性能或可靠性,我们不作任何暗示保证或其他形式的保证

我们提供了第三方联系信息,以便你寻求技术支持。 该联系信息如有更改,恕不另行通知。 我们不保证此第三方联系信息的准确性。

需要更多帮助?

需要更多选项?

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

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。