用户与组
用户与组是域的重要组成部分,并且组是用户的容器,在同一个组里的用户具有特定的相同属性。对于用户和组的枚举,自然是我们首先要做的,因为很多漏洞和不当配置的利用都是围绕着用户与组、主机、服务等展开的。
在枚举域用户的时候,我们需要关注以下这些属性:
用户描述
虽然很多时候用户描述可能是空白的,但如果不是空白的话,用户描述可能会揭露域用户的角色。 如服务器管理员、开发人员等。
PowerView枚举:Get-NetUser | select description
是否禁用了预认证
如果某些域用户没有禁用了域认证 ,我们可以 使用ASREPRoasting 攻击他们并获取 krb5asrep 哈希。 如果幸运的话,我们有可能离线破解这些哈希并获得明文凭证。值得一提的是,在现代化的AD环境中,已经没有必要禁用域认证了,从安全与防御的角度出发,系统管理员应当给所有账户开启域认证。
PowerView枚举 Get-NetUser -PreAuthNotRequired
是否具有SPN
如果一个域用户具有 SPN,那么它是一个服务帐号。我们可以对它们进行 Kerberoasting 攻击并获取 krb5tgs 哈希。 如果幸运的话,我们可能离线破解这些哈希并获得用户的明文凭证。
PowerView枚举:Get-NetUser -SPN
组归属
每个域用户至少属于“域用户”组,但如果有任何域用户属于多个组,那么他们往往可能具有特别的权限,例如可以访问某台主机上的共享目录。
更适合通过BloodHound查看成员与组的关系,虽然使用SharpHound枚举的时候会带来迹象。
而在枚举组的时候,我们需要关注一下这些
组描述
类似于用户描述
PowerView描述:Get-NetGroup | select description
组类型
如果一个组并非是内置的,而是自定义的,例如Server Admins,那么我们需要多关注一下,因为这个组可能具有特定的权限,例如对SQL服务器具备本地管理员权限。