更新 2023 年 3 月 20 日 - 可用性部分
摘要
分布式 组件对象模型 (DCOM) 远程协议是一种协议,用于使用 远程过程调用 (RPC)公开应用程序对象。 DCOM 用于网络设备的软件组件之间的通信。 CVE-2021-26414 需要 DCOM 中的强化更改。 因此,建议验证环境中使用 DCOM 或 RPC 的客户端或服务器应用程序是否按预期工作,同时启用强化更改。
注意 强烈建议安装可用的最新安全更新。 它们提供高级保护,免受最新的安全威胁。 它们还提供我们为支持迁移而添加的功能。 有关如何强化 DCOM 的详细信息和上下文,请参阅 DCOM 身份验证强化:需要了解的内容。
DCOM 更新的第一阶段于 2021 年 6 月 8 日发布。 在该更新中,默认情况下禁用了 DCOM 强化。 可以通过修改注册表来启用它们,如下面的“注册表设置以启用或禁用强化更改”一节中所述。 DCOM 更新的第二阶段于 2022 年 6 月 14 日发布。 这已将强化更改为默认启用,但保留了使用注册表项设置禁用更改的功能。 DCOM 更新的最后阶段将于 2023 年 3 月发布。 它将使 DCOM 强化保持启用状态,并删除禁用它的功能。
时间表
更新版本 |
行为更改 |
2021 年 6 月 8 日 |
阶段 1 发布 - 默认情况下禁用强化更改,但能够使用注册表项启用更改。 |
2022 年 6 月 14 日 |
阶段 2 发布 - 默认情况下启用的强化更改,但能够使用注册表项禁用更改。 |
2023 年 3 月 14 日 |
阶段 3 发布 - 默认启用的强化更改,无法禁用它们。 此时,必须解决环境中强化更改和应用程序的任何兼容性问题。 |
测试 DCOM 强化兼容性
新的 DCOM 错误事件
为了帮助你识别在启用 DCOM 安全强化更改后可能存在兼容性问题的应用程序,我们在系统日志中添加了新的 DCOM 错误事件。 请参阅下表。 如果系统检测到 DCOM 客户端应用程序尝试使用小于RPC_C_AUTHN_LEVEL_PKT_INTEGRITY的身份验证级别激活 DCOM 服务器,系统将记录这些事件。 可以从服务器端事件日志跟踪到客户端设备,并使用客户端事件日志查找应用程序。
服务器事件 - 指示服务器正在接收较低级别的请求
事件 ID |
消息 |
---|---|
10036 |
“服务器端身份验证级别策略不允许用户 %1\%2 SID (%3) 地址 %4 激活 DCOM 服务器。 请至少将激活身份验证级别提高到客户端应用程序中的RPC_C_AUTHN_LEVEL_PKT_INTEGRITY。” (%1 – 域、%2 – 用户名、%3 – 用户 SID、%4 – 客户端 IP 地址) |
客户端事件 - 指示哪个应用程序正在发送较低级别的请求
事件 ID |
消息 |
---|---|
10037 |
“具有 PID %2 的应用程序 %1 请求在计算机 %4 上激活 CLSID %3,且显式设置的身份验证级别为 %5。 DCOM 所需的最低激活身份验证级别为 5 (RPC_C_AUTHN_LEVEL_PKT_INTEGRITY) 。 若要提高激活身份验证级别,请联系应用程序供应商。” |
10038 |
“具有 PID %2 的应用程序 %1 请求在计算机 %4 上激活 CLSID %3,其默认激活身份验证级别为 %5。 DCOM 所需的最低激活身份验证级别为 5 (RPC_C_AUTHN_LEVEL_PKT_INTEGRITY) 。 若要提高激活身份验证级别,请联系应用程序供应商。” (%1 – 应用程序路径,%2 – 应用程序 PID,%3 – 应用程序请求激活的 COM 类的 CLSID,%4 – 计算机名称,%5 – 身份验证级别值) |
可用性
这些错误事件仅适用于 Windows 版本的子集;请参阅下表。
Windows 版本 |
在这些日期或之后可用 |
---|---|
Windows Server 2022 |
2021 年 9 月 27 日 |
Windows 10,版本 2004,Windows 10,版本 20H2,Windows 10,版本 21H1 |
2021 年 9 月 1 日 |
Windows 10 版本 1909 |
2021 年 8 月 26 日 |
Windows Server 2019,Windows 10,版本 1809 |
2021 年 8 月 26 日 |
Windows Server 2016,Windows 10,版本 1607 |
2021 年 9 月 14 日 |
Windows Server 2012 R2 和Windows 8.1 |
2021 年 10 月 12 日 |
Windows 11版本 22H2 |
2022 年 9 月 30 日 |
客户端请求自动提升修补程序
所有非匿名激活请求的身份验证级别
为了帮助减少应用兼容性问题,我们已自动将基于 Windows 的 DCOM 客户端的所有非匿名激活请求的身份验证级别提高到至少RPC_C_AUTHN_LEVEL_PKT_INTEGRITY。 通过此更改,将在服务器端启用 DCOM 强化更改的情况下自动接受大多数基于 Windows 的 DCOM 客户端请求,而无需对 DCOM 客户端进行任何进一步修改。 此外,大多数 Windows DCOM 客户端将自动处理服务器端的 DCOM 强化更改,而无需对 DCOM 客户端进行任何进一步修改。
注意 此修补程序将继续包含在累积更新中。
修补更新时间线
自 2022 年 11 月首次发布以来,自动提升修补程序已进行了一些更新。
-
2022 年 11 月更新
-
此更新会自动将激活身份验证级别提高到数据包完整性。 此更改在 Windows Server 2016 和 Windows Server 2019 上默认处于禁用状态。
-
-
2022 年 12 月更新
-
11 月更改默认为 Windows Server 2016 和 Windows Server 2019 启用。
-
此更新还解决了影响 Windows Server 2016 和 Windows Server 2019 匿名激活的问题。
-
-
2023 年 1 月更新
-
此更新解决了影响从 Windows Server 2008 到 Windows 10 (2015) 年 7 月发布的初始版本平台上匿名激活的问题。
-
如果在客户端和服务器上安装了自 2023 年 1 月起的累积安全更新,它们将完全启用最新的自动提升修补程序。
用于启用或禁用强化更改的注册表设置
在可以启用或禁用 CVE-2021-26414 强化更改的时间线阶段,可以使用以下注册表项:
-
路径:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Ole\AppCompat
-
值名称:“RequireIntegrityActivationAuthenticationLevel”
-
类型:dword
-
值数据:default= 0x00000000 表示已禁用。 0x00000001表示已启用。 如果未定义此值,则默认为启用。
备注 必须以十六进制格式输入值数据。
重要说明 设置此注册表项后,必须重启设备才能生效。
注意 启用上述注册表项将使 DCOM 服务器强制Authentication-Level RPC_C_AUTHN_LEVEL_PKT_INTEGRITY 或更高版本进行激活。 这不会影响使用身份验证级别RPC_C_AUTHN_LEVEL_NONE) 进行匿名激活 (激活。 如果 DCOM 服务器允许匿名激活,即使启用了 DCOM 强化更改,仍允许该服务器激活。
注意 默认情况下,此注册表值不存在;必须创建它。 如果存在,Windows 将读取它,并且不会覆盖它。
注意 安装以后的更新既不会更改也不会删除现有的注册表项和设置。