确定 MS AD 林/域内登录的 UPN 用途

确定 MS AD 林/域内登录的 UPN 用途

也许有人可以给我一点提示。

我正在评估将大型 Microsoft AD 环境中所有(人类)用户的 UPN 更改为推荐的 MS 格式(与用户的主要公共邮件地址一致,包括用户的公共可路由邮件域作为 UPN 后缀)的先决条件。

现在,更改 UPN 可能会破坏应用程序或服务,或者在使用 UPN 时扰乱用户登录过程。

我知道目前在大多数环境中 UPN 并未广泛用于登录,但我仍然想详细说明是否有办法诊断登录过程中 UPN 的使用情况。

我们讨论的是远高于 2003 的功能级别,但具有活动的 NTLM。相关域控制器正在运行 2012 和 2012R2。在这种情况下,场景仅限于具有 3 个域的单个林。虽然这只是环境的一小部分,但它是与 UPN 更改相关的唯一部分。

首先也是最简单的方法是检查域控制器上的事件日志以查找登录事件。问题是:据我所知,无论使用哪种用户 ID 表示进行登录,这些事件始终以“传统”格式“DOMAIN\username”进行登录。如果我错了,请纠正我,因为这样确实可以大大加快速度。

我想到的下一件事是 Kerberos 票证来回的网络踪迹。如果我没有弄错 Kerberos,这些票证最初是使用用户密码加密的,要检查它们,我需要使用来自(可能)未知客户端的数据解密票证。

现在,这是我不确定的地方,希望我是错的,因为在某些时候,DC 需要确定他们使用哪个密码哈希来解密消息。我承认我还没有对此进行大量测试,因为我现在不想修改 DC。

也许还有其他我还没想到的方法来解决这个问题——无论如何,我希望有人能给我一些关于解决这个问题的可能方法的提示。我讨厌“应用更改然后躲避”,如果可能的话,我宁愿第一次就把事情做好。

答案1

好的,在测试实验室之后,我现在可以自己回答这个问题了。登录到域控制器的系统对 TGT 的初始请求在网络数据包的 kerberos 有效负载中包含明文形式的用户名(这一点我们已经知道了)。

但:

使用以下方式登录时域名\用户名,这将是用户名

使用以下方式登录时联合网络通信公司,这将是完整 UPN用户

您要查找的数据包是 TCP、KRB5 有效负载、消息类型 krb-as-req (10),用户名位于“cname”部分下,名称类型为“KRB5-NT-ENTERPRISE-PRINCIPAL”

因此,要查明您的网络中是否使用了 UPN,请跟踪进入您的 DC 的所有数据包,过一段时间将跟踪信息保存到磁盘并过滤“@”符号。

相关内容