白银/黄金(跨域)/钻石/蓝宝石票据
攻击复现
本文涉及到的原理阐述的比较简单,需要师傅对Kerberos有一定的了解。
票据攻击多用于域内权限维持。
0x01 白银票据
在TGS_REP里面的ticket的encpart是使用服务的hash进行加密的,如果拥有服务的hash,就可以给自己签发任意用户的TGS票据。
由于只拥有服务的hash,不能去对PAC进行签名,则当服务验证PAC签名时,白银票据将不生效;且和黄金票据相比,只能用于单个机器的权限维持,即已经拿下的机器;这就是白银票据的限制。
白银票据利用
环境:
制作票据:
白银票据可制作的服务一表:
0x02 黄金票据
在AS_REP里面的ticket的encpart是使用krbtgt的hash进行加密的,如果拥有krbtgt的hash,就可以自己签发任意用户的TGT票据。
黄金票据利用
环境:
mimikatz制作黄金票据:
0x03 跨域黄金票据
普通的黄金票据不能跨域使用,需要添加sids参数即可从子域到父域。
域是根据Enterprise Admins组来实现权限划分,子域是没有这个组的,如果创建的黄金票据不包含Enterprise Admins组,则黄金票据不会向林中的其他域提供管理权限,所以要获取父域Enterprise Admins组sid。
跨域黄金票据利用
环境:
获取父域Enterprise Admins组sid:
制作跨域黄金票据:
0x04 钻石票据
有一种比较常见的黄金票据检测方式是检测有没有对应AS-REQ的TGS-REQ。
这是一个黄金票据从制作到利用dcsync的数据包,可以看见是从TGS-REQ开始的。
而钻石票据从制作到利用dcsync的过程是有AS-REQ的,其中错误[BoundErrorUnreassembled Packet]是wireshark重组数据包问题导致的,使用ticketer.py制作钻石票据就没有这个错误,所以这里不影响。
钻石票据思路
钻石票据主要思路为:
请求一个真实的TGT;
解密其PAC;
重新计算PAC签名,再加密它;
得到一个与合法PAC高度相似的PAC。
该方法相对于黄金票据更为隐蔽,因为这是KDC创建的真实TGT,只是修改了PAC。
利用
环境:
使用Rubeus
获取krbtgt的aes256密钥:
获取目标用户的RID,SID最后一部分1000为RID:
制作票据并进行dcsync:
使用ticketer.py
制作票据:
导入票据:
对dc进行横向:
0x05 蓝宝石票据
蓝宝石票据和钻石票据类似,差距在于PAC的创建方式,蓝宝石票据是获取一个真实的PAC再去替换原来的PAC,相对钻石票据更加隐蔽。
PAC获取
PAC获取涉及到U2U和S4U2Self。
U2U
用户到用户身份验证是Kerberos协议的扩展,其中一个用户充当服务器,另一个用户充当客户端;它允许用户在其桌面计算机(个人计算机)上托管安全的应用程序服务,且无需再磁盘上保留长期密钥即可运行服务器(如果是长期有效的srvtab密钥可能会有盗窃风险),用户短期TGS会话密钥代替了通常的srvtab密钥。
S4U2Self
S4U2Self是服务可以代表用户请求针对服务自身的Kerberos票据,获取用户的授权(可转发的用户TGS票据)。
U2U+S4U2Self
S4U2Self只能是服务使用,即需要SPN,但是结合U2U就可以使用户A(充当服务器方的用户)在没有SPN情况下使用S4U2Self,KDC就会返回代表用户B(充当客户端方的用户)请求针对用户A生成的票据,而这个票据里面含有目标用户B的PAC,这样就获取了目标的PAC。
利用
环境:
最好重新下载一个ticketer.py:
https://github.com/ShutdownRepo/impacket/blob/sapphire-tickets/examples/ticketer.py
参考
Kerberos篇-windows protocol (gitbook.io)
https://www.cnblogs.com/Yang34/p/14248737.html
https://www.thehacker.recipes/ad/movement/kerberos/forged-tickets/diamond
https://www.trustedsec.com/blog/a-diamond-in-the-ruff/
https://pgj11.com/posts/Diamond-And-Sapphire-Tickets/
https://unit42.paloaltonetworks.com/next-gen-kerberos-attacks
http://www.di-srv.unisa.it/~ads/corso-security/www/CORSO-0001/kerberos/ref/kerberos-faq.html#u2uauth
长按二维码关注
D0g3
道格安全
原文始发于微信公众号(道格安全):白银/黄金(跨域)/钻石/蓝宝石票据攻击复现 | 43 期
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论