有没有一种简单的方法来检查 Windows 2008R2 DC 用户帐户中的标志或密钥材料,以显示帐户当前存储了可逆密码?
我知道 DSInternals,但我并不想解密密码。我通过 AD Explorer 查看了 AD 属性,但没有看到任何明显的标志(即使像 UserAccountControl 中的 ENCRYPTED_TEXT_PWD_ALLOWED 这样的按位标志在组或域级别设置权限时也不会改变)。
这对于验证数据是否被删除或验证仍然必须使用需要访问密码的加密方法(如 Digest 或 CHAP)的用户很有用。
谢谢。
答案1
2008R2 将密码存储在隐藏的 supplementalCredentials 属性中。此属性通常不可读或不可写。有多种读取方法,例如通过Get-ADReplAccount
在DSInternals
模块或ntds.dit
离线解析数据库文件(例如,使用Get-ADDBAccount
)。基于 LDAP 的工具(例如)Revdump
不再起作用。
答案2
首先,摘要认证和可逆加密应该绝不从未被使用过。有工具 可用的使用这些方法可以轻松提取帐户的纯文本密码。攻击者通常使用此方法提取您帐户的纯文本密码,以便了解密码的生成方式,并在失去持久性时轻松猜出下一个密码。
确定是否正在使用此功能的最佳方法是检查它是否在组策略、细粒度密码策略或 Active Directory 用户帐户中启用。启用设置后,用户纯文本密码将在下次密码重置后可用。
1)组策略(默认域策略):
计算机配置\Windows 设置\安全设置\帐户策略\密码策略 -> “使用可逆加密存储密码”
来自 TechNet:“此策略旨在为使用需要知道用户密码才能进行身份验证的协议的应用程序提供支持。使用可逆加密存储密码与存储明文版本的密码基本相同。因此,除非应用程序要求超过保护密码信息的需要,否则永远不应启用此策略。”
2)细粒度的密码策略:
点击此处如何查看用户或全局安全组的结果 PSO。
来自 TechNet:“您可以使用细粒度密码策略在单个域内指定多个密码策略。您可以使用细粒度密码策略对域中的不同用户组应用不同的密码限制和帐户锁定策略。”
3)关于域用户对象账户选项:
“使用可逆加密存储密码”
使用此 PowerShell 查询查找域中配置了“使用可逆加密存储密码”复选框的用户已检查:Get-ADObject -LDAPFilter '(&(objectClass=user)(objectCategory=user)(userAccountControl:1.2.840.113556.1.4.803:=128))'
以下是另一种用于识别启用了可逆加密的域帐户的 PowerShell 方法:
Get-ADUser -Filter 'AllowReversiblePasswordEncryption -eq "True"'