注意
重要 某些版本的 Microsoft Windows 已终止支持。 注意:当扩展安全更新 (ESU) 可用时,某些版本的 Windows 可能会在最新的操作系统终止日期之后得到支持。 有关提供 ESU 的产品列表,请参阅生命周期常见问题解答 - 扩展安全性汇报。
更改日志
| 更改日期 | 更改说明 |
|---|---|
| 2024 年 8 月 1 日 |
|
| 2024 年 8 月 5 日 |
|
| 2024 年 8 月 6 日 |
|
目录
摘要
2024 年 7 月 9 日或之后的 Windows 更新解决了与 MD5 冲突问题相关的远程身份验证拨入用户服务 (RADIUS) 协议中的安全漏洞。 由于 MD5 中的完整性检查较弱,攻击者可能会篡改数据包以获取未经授权的访问权限。 MD5 漏洞使得 用户数据报协议 (基于 UDP) 的 RADIUS 流量在传输过程中无法防止数据包伪造或修改。
有关此漏洞的详细信息,请参阅 CVE-2024-3596 和白皮书 RADIUS AND MD5 碰撞攻击。
注意 此漏洞需要物理访问 RADIUS 网络和 网络策略服务器 (NPS) 。 因此,具有安全 RADIUS 网络的客户不会受到攻击。 此外,当通过 VPN 进行 RADIUS 通信时,此漏洞不适用。
采取行动
为了帮助保护环境,我们建议启用以下配置。 有关详细信息,请参阅“配置”部分。
|
|---|
此更新添加的事件
有关详细信息,请参阅“配置”部分。
注意
注意 这些事件 ID 由 2024 年 7 月 9 日或之后的 Windows 更新添加到 NPS 服务器。
事件 ID:4418
Access-Request 数据包已删除,因为它包含 Proxy-State 属性,但缺少 Message-Authenticator 属性。 请考虑更改 RADIUS 客户端以包括 Message-Authenticator 属性。 或者,使用 limitProxyState 配置为 RADIUS 客户端添加异常。
| 事件日志 | 机制 |
|---|---|
| 事件类型 | 错误 |
| 事件源 | NPS |
| 事件 ID | 4418 |
| 事件文本 | 从包含 Proxy-State 属性的 RADIUS 客户端 <ip/名称> 收到 Access-Request 消息,但不包含 Message-Authenticator 属性。 因此,已删除该请求。 出于安全考虑,Message-Authenticator 属性是必需的。 有关详细信息,请参阅 https://support.microsoft.com/help/5040268。 |
事件 ID:4419
这是没有 Message-Authenticator 属性且存在 Proxy-State 的 Access-Request 数据包的 审核事件。 请考虑更改 RADIUS 客户端以包括 Message-Authenticator 属性。 启用 limitproxystate 配置后,将删除 RADIUS 数据包。
| 事件日志 | 机制 |
|---|---|
| 事件类型 | 警告 |
| 事件源 | NPS |
| 事件 ID | 4419 |
| 事件文本 | 从包含 Proxy-State 属性的 RADIUS 客户端 <ip/名称> 收到 Access-Request 消息,但不包含 Message-Authenticator 属性。 当前允许请求,因为 limitProxyState 是在审核模式下进行配置。 有关详细信息,请参阅 https://support.microsoft.com/help/5040268。 |
事件 ID:4420
这是收到的 RADIUS 响应数据包的审核事件,代理中没有 Message-Authenticator 属性。 请考虑更改 Message-Authenticator 属性的指定 RADIUS 服务器。 启用 requiremsgauth 配置后,将删除 RADIUS 数据包。
| 事件日志 | 机制 |
|---|---|
| 事件类型 | 警告 |
| 事件源 | NPS |
| 事件 ID | 4420 |
| 事件文本 | RADIUS 代理收到来自服务器 <ip/名称>的响应,其中缺少 Message-Authenticator 属性。 当前允许响应,因为 requireMsgAuth 是在审核模式下进行配置。 有关详细信息,请参阅 https://support.microsoft.com/help/5040268。 |
事件 ID:4421
如果未配置建议的设置,则在服务启动期间记录此事件。 如果 RADIUS 网络不安全,请考虑启用设置。 对于安全网络,可以忽略这些事件。
| 事件日志 | 机制 |
|---|---|
| 事件类型 | 警告 |
| 事件源 | NPS |
| 事件 ID | 4421 |
| 事件文本 | RequireMsgAuth 和/或 limitProxyState 配置处于 <禁用/审核> 模式。 出于安全目的,应在“启用”模式下配置这些设置。 有关详细信息,请参阅 https://support.microsoft.com/help/5040268。 |
配置
在服务器上的所有 Access-Request 数据包中配置发送 Message-Authenticator 属性
此配置使 NPS 代理能够开始在所有 Access-Request 数据包中发送 Message-Authenticator 属性。 若要启用此配置,请使用以下方法之一。
方法 1:使用 NPS Microsoft 管理控制台 (MMC)
若要使用 NPS MMC,请执行以下步骤:
- 打开服务器上的 NPS 用户界面 (UI)。
- 打开远程 Radius 服务器组。
- 选择 Radius 服务器。
- 转到“身份验证/记帐”。
- 单击以选择“请求必须包含 Message-Authenticator 属性”复选框。
方法 2:使用 netsh 命令
若要使用 netsh,请运行以下命令:
注意
netsh nps set remoteserver remoteservergroup = <server group name> address = <server address> requireauthattrib = yes
有关详细信息,请参阅 远程 RADIUS 服务器组命令。
在客户端上的所有 Access-Request 数据包中配置 Message-Authenticator 属性的验证
此配置需要所有 Access-Request 数据包中的 Message-Authenticator 属性,如果不存在,则删除数据包。
方法 1:使用 NPS Microsoft 管理控制台 (MMC)
若要使用 NPS MMC,请执行以下步骤:
- 打开服务器上的 NPS 用户界面 (UI)。
- 打开 Radius 客户端。
- 选择 Radius 客户端。
- 转到 高级设置。
- 单击此项可选中“访问请求消息必须包含消息验证器属性”复选框。
有关详细信息,请参阅 配置 RADIUS 客户端。
方法 2:使用 netsh 命令
若要使用 netsh,请运行以下命令:
注意
netsh nps set client name = <client name> requireauthattrib = yes
有关详细信息,请参阅 远程 RADIUS 服务器组命令。
为所有客户端配置 limitproxystate
此配置使 NPS 服务器能够删除可能易受攻击 Access-Request 数据包,这些数据包包含 Proxy-State 属性,但不包括 Message-Authenticator 属性。 此配置支持三种模式:
- 审核
- 启用
- 禁用
在 审核 模式下,记录警告事件(事件 ID: 4419),但仍会处理该请求。 使用此模式标识发送请求的不符合实体。
使用 netsh 命令根据需要配置、启用和添加异常。
若要在 审核 模式下配置客户端,请运行以下命令:
注意
netsh nps set limitproxystate all = “审核”
若要在“启用”模式下配置客户端,请运行以下命令:
注意
netsh nps set limitproxystate all = “启用”
若要添加异常以从 limitProxystate 验证中排除客户端,请运行以下命令:
注意
netsh nps set limitproxystate name = <client name> exception = “Yes”
为远程服务器配置 requiremsgauth
此配置使 NPS 代理可以删除没有 Message-Authenticator 属性的潜在易受攻击的响应消息。 此配置支持三种模式:
- 审核
- 启用
- Disable
在 审核 模式下,记录警告事件(事件 ID: 4420),但仍会处理该请求。 使用此模式标识发送响应的不符合实体。
使用 netsh 命令根据需要配置、启用和添加异常。
若要在 审核 模式下配置服务器,请运行以下命令:
注意
netsh nps setrequiremsgauthall = "audit"若要为所有服务器启用配置,请运行以下命令:
注意
netsh nps set requiremsgauth all
= "enable"若要添加异常以从 requireauthmsg 验证中排除服务器,请运行以下命令:
注意
netsh nps set requiremsgauth remoteservergroup = <remote server group name> address = <server address> exception = “yes”
常见问题解答
如果在配置启用后由于消息删除而观察到 VPN 请求失败,该怎么办?
检查相关事件的 NPS 模块事件。 请考虑为受影响的客户端/服务器添加异常或配置调整。
如果 RADIUS 网络是安全的,是否需要任何配置更改或任何操作?
否,本文中讨论的配置建议用于不安全的网络。
参考
第三方信息免责声明
本文中提到的第三方产品由 Microsoft 以外的其他公司提供。 对于这些产品的性能或可靠性,我们不作任何暗示保证或其他形式的保证
我们提供了第三方联系信息,以便你寻求技术支持。 该联系信息如有更改,恕不另行通知。 我们不保证此第三方联系信息的准确性。