摘要
Windows 2021 年 11 月 9 日发布的CVE-2021-42282更新为 Active Directory (AD) :
-
用户主体名称 (UPN) 和服务主体名称 (SPN) 唯一性(Windows 8、Windows Server 2012 及更早版本)
-
SPN 别名唯一性(所有 Windows 版本都已更新)
用户主体名称和服务主体名称的唯一性
此功能保证 SNS 在林中是唯一的,这可以防止计算机和域控制器添加重复的 SNS。 此功能已存在于Windows 8.1及更高版本中,并在SPN 和 UPN 中进行了描述。
SPN 别名唯一性
现有 AD 属性为 CIFS、HTTP 和 RPC 等服务的等效主机 SPN 定义许多公共服务类的别名。 AD 属性定义为 Active Directory 林的配置命名上下文中的列表。 没有管理员权限的用户可能不会使用此别名将隐式分配给其他帐户的 SPN。
备注 此验证是在验证 UPN 和 SPN 唯一性的基础上进行的。
默认启用 SPN 别名唯一性验证。 可以通过修改 dSHeuristics 属性的 21st 字符(解释为一系列字符)来关闭这些验证。 The dSHeuristics attribute does not exist by default, but you can add it under the distinguished name “CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,DC=support,DC=local”. 可能的设置及其对应的位值如下所示:
-
值 0 – 表示强制实施所有 (不设置 000) 默认值的位
-
值 1 – 表示禁用 UPN 唯一性验证 (位 0 设置 - 001)
-
值 2 - 表示禁用 SPN 唯一性验证 (位 1 设置 - 010)
-
值 3 – 表示禁用 UPN 唯一性和 SPN 唯一性验证。 (位 0 和 1 集 - 011)
-
值 4 - 表示禁用 SPN 别名唯一性验证 (位 2 设置 - 100)
-
值 5 - 表示禁用 SPN 别名和 UPN 唯一性验证 (位 2 和位 0 设置 - 101)
-
值 6 - 表示禁用 SPN 别名和 SPN 唯一性 (位 2 和位 1 设置 - 110)
-
值 7 - 表示禁用所有 (所有位设置 111)
例如:如果林中未启用其他 dSHeuristics 设置,并且只想禁用 SPN 别名唯一性验证,则应将 dSHeuristics 属性设置为:“000000000100000000024”
在本例中设置的字符为:
10个 字符:如果 dSHeuristics 属性至少为 10 个字符
,则必须设置为 1
第 20个字符 :如果 dSHeuristics 属性至少为 20 个字符
,则必须设置为 2
21st char:必须设置为上述列表中的值;值 4 表示禁用 SPN 别名唯一性。
备注 如果已设置 dSHeuristics 属性,请确保将现有设置合并到新的 dSHeuristics 属性字符串中,并确认第 10、20 和 21 个字符已按上述设置。 已设置的其他字符应保持不变。
有关配置 dSHeuristics 字符的详细信息,请参阅以下文档:
更多信息
什么是服务主体名称?
服务主体名称 (SPN) 是服务实例的唯一标识符。 Kerberos 身份验证使用 SNS 将服务实例与服务登录帐户关联。 允许客户端应用程序请求服务对帐户进行身份验证,即使客户端没有帐户名。 有关详细信息 ,请参阅服务 主体名称。
什么是用户主体名称?
U用户主体名称(UPN)是基于互联网标准RFC 822的用户的电子邮件式登录名。 有关详细信息,请参阅 User-Principal-Name 属性。
常见问题
问题 1 如果我需要为帐户注册重复的主机别名 SPN 怎么办?
解答 1 将所需的 SPN 注册为管理员。
问题 2 如果关闭 SPN 或 UPN 唯一性,会发生什么情况?
解答 2 我们不建议此选项。 如果 SNS 不唯一,则似乎所有重复的 SNS 都完全未注册。 注册重复的SPN与注销原始 SPN 具有相同的效果。 如果 UPN 不唯一,则使用重复 UPN 的用户查找将失败。
问题 3 如果关闭 SPN 别名唯一性,会发生什么情况?
解答 3 我们不建议此选项。 非管理员可能会将现有别名 SPN 的分辨率从其当前分辨率更改为非管理员控制下的计算机。 该计算机可能充当该服务,因为 Kerberos 提供的服务器身份验证将接受新帐户作为该服务的正确主机,而不是主机 SPN 的原始帐户。
问题 4 域管理员如何查找网络上已存在的重复 SNS 或 UPN?
解答 4 如果不编写大量脚本来枚举域中的所有 SNS 和 UPN 并关联以查找重复项,则此操作不可行。
问 5 如果我的域控制器混合在一起进行了更新,但域控制器之间未更新或不匹配设置,会发生什么情况?
解答 5 不会因为重复的 UPN 或 SNS 而阻止复制。 因此,如果在没有更新的域控制器上创建了重复的 UPN 或 SNS,则重复项可以复制到其他域控制器。