AS_REQ & AS_REP引出的安全问题
上文讲了AS_REQ & AS_REP的流程和各个字段的解释。本文将讲述其中产生的问题和如何利用。
# Pass The Hash & Pass The Key
在AS_REQ中使用用户hash加密时间戳,所以不需要明文,pth和ptk就可以实现认证获取票据。
pth不演示了,用ntlm hash搞就行,在补丁kb2871997之后可以用ptk。这个补丁具体的作用参考 https://blog.csdn.net/Ping_Pig/article/details/109171690 先mark
ntlm hash is mandatory on XP/2003/Vista/2008 and before 7/2008r2/8/2012 kb2871997 (AES not available or replaceable) ; AES keys can be replaced only on 8.1/2012r2 or 7/2008r2/8/2012 with kb2871997, in this case you can avoid ntlm hash.
|
|
# 用户名枚举
用户名不存在时
用户名存在但是密码不正确时
工具
|
|
# 密码喷洒
密码不正确时
密码正确时
通过少量密码爆破大量用户名,避免锁定账户。
工具 https://github.com/dafthack/DomainPasswordSpray
# AS-REPRoasting
对于域用户,如果设置了选项”Do not require Kerberos preauthentication”,此时向域控制器的88端口发送AS-REQ请求,对收到的AS-REP内容重新组合,能够拼接成”Kerberos 5 AS-REP etype 23”(18200)的格式,接下来可以使用hashcat对其破解,最终获得该用户的明文口令。
利用前提:域用户设置了选项”Do not require Kerberos preauthentication”。通常情况下,该选项默认不会开启。
利用
|
|
需要域账户或者机器账户运行
扔到hashcat就可以了
powerview中有寻找开启了Do not require Kerberos preauthentication
选项用户的模块。
|
|
# 黄金票据
放到后面和白银票据一起
# 参考
- https://www.catalog.update.microsoft.com/Search.aspx?q=KB2871997
- https://daiker.gitbook.io/windows-protocol/kerberos/1
- https://blog.csdn.net/Ping_Pig/article/details/109171690
- 域渗透——AS-REPRoasting
- https://github.com/r3motecontrol/Ghostpack-CompiledBinaries
文笔垃圾,措辞轻浮,内容浅显,操作生疏。不足之处欢迎大师傅们指点和纠正,感激不尽。
如果你觉得这篇文章对你有所帮助,欢迎赞赏或关注微信公众号~