Active Directory安全指南:Kerberos服务账户KRBTGT深度解析
域Kerberos服务账户KRBTGT是一个重要账户,因为它用于签名和加密Kerberos票据。该账户被禁用,且密码除了从Windows 2000/2003升级到Windows Server 2008(或更新版本)时外不会更改。
这是一个高特权账户,如果攻击者能够获取该账户的密码哈希(或密码),他们就可以创建伪造的Kerberos票据(又称Golden Tickets)。大多数AD林中的此账户仍使用旧密码。
KRBTGT账户存储两个密码:当前密码和先前密码,并同时检查两者以验证Kerberos票据。这意味着要确保KRBTGT密码完全更改,必须更改密码两次。如果攻击者能够获取与KRBTGT账户密码一样旧的DC备份(比如15年),那么即使备份已有15年历史,他们也可以破坏环境!
我们可以使用“msds-keyversionnumber”属性来确定KRBTGT密码已更改的次数。公式n-2用于计算密码更改次数。如果该值为2,则表示自域创建时设置以来未更改。如果该值为9,则表示已更改7次(9-2=7)。有时该值非常大,比如100003。在这种情况下,我们仅使用最后一位数字(3)来计算更改次数:n-2=1,因此已更改1次。我们建议更改密码一次,然后等待至少一周,再次更改密码。当您设置密码时,DC上的一个过程实际上会将KRBTGT密码更改为完全随机的密码。
报告当前域KRBTGT账户的PowerShell代码:
|
|