kerberos(票据)

发布于 17 天前  11 次阅读


 

最近在学习内网渗透,在内网的学习中理解票据的工作原理是最基础的

所以,我决定在此写一篇笔记,记录一下心得

Kerberos

kerberos是一种协议,用于验证两台计算机间的通信,域渗透中的黄金票据和白银票据都是基于kerberos的

工作流程

如果A与B之间要进行通信,A要向B证明这个密钥是A给的,首先A会对密钥加密,发送给B,B会对A发来的密钥进行解密,将解密后的密钥与明文进行对比,如果相符,则证明该密钥是A发来的

密钥则分为长期密钥和短期密钥

长期密钥是长期存在的,例如存储在计算机用户的管理员NTML+HASH

短期密钥的发布,则需要一个信任的第三方进行颁布(KDC)

所以,工作时间需要三个介质:server,client,KDC

 

通信介质

  1. DC(域控),对域下的计算机,用户做统一管理

  2. KDC

  3. AS身份验证,用于KDC对client认证

  4. AD(活动目录)存储机器信息

  5. TGS票据授予服务,用于KDC向server和client发布临时密钥

  6. clinet客户端

  7. server服务器端

    流程图如下

    kerberos(票据)

  8. C 向域控发起对 S 的通信请求,DC用AS查询该用户是否存在,如果存在则颁发TGT票据给C

  9. C拿到票据,再次向DC发起对S的通信请求,TGS服务拿到票据检验C是否有权限通信

  10. 如果有权限,则TGS返回一个ST(service ticket)票据

  11. C拿着票据请求server

  12. 产生通信

域渗透中Kerberos的问题

黄金票据的问题出现在 TGT 处。

白银票据的问题出现在 ST 处。

经典的 ms14-068 的问题是在权限认证的时候允许用户填入权限,造成了伪造管理员票据的漏洞。