底层抓包分析kerberos协议

环境

域名为adc.com

一共有三台机器

DC机2012。账号administrator,密码admin@888。机器名:DC.abc.com

PC机2008。账号ZS,密码admin@123。机器名:08-PC.abc.com

PC机2003。账号LS,密码admin123@#。机器名:03-PC.abc.com

 

 

 

 操作

kali先开启wireshark,抓eth0的包

08机器输入klist查看内存的票据

 然后尝试访问03机器的c盘资源

 拒绝访问,没有权限

这时候使用kekeo工具

申请一个DC域管administrator的票据

这里需要输入DC机用户名,域名和DC机密码

申请成功会得到一个票据

 然后将这个票据放入内存中

需要输入票据的名称,目标服务,目标机器名称

 cmd输入klist查看是否成功

 这时候去访问03机的c盘就可以访问了

 数据包分析

第一阶段

首先是08机器向AS发送身份信息(AS-REQ),AS返回TGT(AS-REP)

这两个数据包是krb5协议

 AS-REQ

 AS-REQ主要包含了用户的一些信息,是由客户端发送给AS的数据包

PA-DATA pA-ENC-TIMESTAMP 使用用户的hash,或者AES key加密时间戳 生成value(这个数据包中的重要信息)

cname 请求的用户名

realm: 域名

sname 请求的服务名

AS-REP

 其中ticket中的enc-part是krbtgt哈希值加密的内容

        里面有name,ip,time,TGSNAME,TGT有效时间,CT_SK

下面的enc-part是用户哈希值加密的内容

        里面是time,TGSname,TGT有效时间和CT_SK

第二阶段

这时候08机向TGS发送TGT(TGS-REQ),TGS返回一个ST(TGS-REP)

这两个数据包也是krb5协议

 TGS-REQ

 08机在收到AS返回的TGT后,用自己的哈希值解密拿到CT_SK。

使用拿到的这个CT_SK加密自己的name,ip和time

然后和krbtgt哈希加密的内容,还有想要访问的servername拼接在一起

 TGS-REQ数据包

enc-part是使用krbtgt的哈希加密的
authenticator是使用CT_SK加密的

下面还有要访问的服务名

TGS-REP

TGS在接收到用户的TGT后,用自己的哈希解密拿到信息,然后用CT_SK解密用户的信息

经过对比确认用户信息后,使用服务机(03机)的哈希对信息加密

然后和用户的加密信息拼接在一起发送给用户

 TGS-REP数据包

 内层的cipher是使用server的哈希加密的内容
外层的cipher是使用CS_SK加密的内容

第三阶段

08机向服务机(03)发送ST(AP-REQ),服务机(03)返回信息(AP-REP)

这时候的数据包不是krb5协议了,是smb或smb2协议

 AP-REQ

08机使用CS_SK重新加密信息和server哈希加密的内容拼接发送给服务机(03)

AP-REQ数据包

enc-part包含了使用服务端hash加密的内容

authenticator:包含了使用CS_SK加密内容

AP-REP

服务机使用自己的哈希解密内容拿到CS_SK

使用CS_SK解密用户信息,经过对比确认身份,然后返回信息允许操作

AP-REP数据包

 服务端发送给客户端的信息

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值