域渗透-Pass The Ticket票据传递攻击

自己笔记备份,非文章。

拿god.org的环境测的

0x01 Kerberos认证中比较重要的字段

AS_REQ && AS_REP

AS_REQ 包:

凭据包括用户NTLM Hash加密的时间戳及一些客户端信息。
请求的凭据是client hash加密的时间戳---》放在PA-DATA

AS_REP 包:

Kdc会使用client hash解密 获得时间戳---预认证成功
KDC会发放tgt票据(krbtgt用户hash加密的tgt票据 ) 和 session key

相关重要的字段:

AS_REQ 字段

req-body中的字段
1.cname
#发起请求的用户
      2.sname
#服务端用户名   AS中是krbtgt , PrincipalName 类型
      3.realm
域名
      4.from
发送时间
      5.till
到期时间,rubeus和kekeo都是20370913024805Z,这个可以作为特征来检测工具。
      6.nonce
随机生成的一个数kekeo/mimikatz nonce是12381973,rubeus nonce是1818848256
     7.etype

加密类型,hash的加密类型

AS_REP 字段

需要注意的为ticket中的enc-part
krbtgthash加密返回的tgt  金票。

TGS_REQ 包:

TGS_REP 包:

TGS_REQ 字段

Client在拿到TGT Session Key之后,携带tgt去请求tgs的票据。
关于引入的拓展S4U2SELF和S4U2PROXY,引发委派安全问题。

REQ BODY中的字段

REQ_BODY
	cname
	#发起请求的用户
	sname
	#请求的服务
	kdc-options
	用于与KDC约定一些选项设置
	realm
	域名
	till
	到期时间,rebeus和kekeo都是20370913024805Z
	nonce
	随机生成数 ,kekeo/mimikatz的nonce为12381973,rubeus的nonce为1818848256
	etype
	加密类型
	AddtionTicket
附加票据,S4U2self阶段获得的tgs就放这个字段。



TGS_REP 字段

包中的padata的AP-REQ,这个就是携带的TGT,而authenticator是as阶段获得的Session key加密的时间戳。
个人觉得这个包中比较重要的就是ticket字段(ST票据 由服务的NTML hash加密)和最外面那个
enc_part字段(AS-Sessionkey加密的,可以解密的,解密后下阶段的认证密钥,所以通信时候kdc没有保存通信阶段的key)

0x02 Pass The Ticket票据传递

常规金票导出


拿金票举例子,这里导入后进行PPT,看图就很简单了:

或者导出到文件,再导入

常用票据导出

impacket PPT票据传递


posted @ 2021-08-10 21:11  卿先生  阅读(592)  评论(0)    收藏  举报