Mimikatz 黄金票据伪造&传递攻击
Mimikatz 黄金票据伪造&传递攻击
01 攻击说明
1.1 票据传递攻击(Pass the Ticket,PtT)
票据传递攻击(PtT)是基于Kerberos认证的一种攻击方法,常用来做后渗透权限维持,黄金票据攻击利用的前提是得到了域内krbtgt用户的NTLM哈希或者AES-256的值,白银票据攻击利用的前提是得到了域内服务账号的NTLM哈希或者AES-256的值,票据传递攻击用来做域控权限维持。
1.1 什么是Krbtgt用户
每个域控制器都有一个krbtgt的用户账户,是KDC的服务的账户,用来创建票据授予服务(TGS)加密的密钥kerberos是一种网络认证协议,其设计是通过密钥系统为客户机/服务器应用程序 提供强大的认证服务。
1.2 关键字说明
- kerberos认证
- 域控制器(Domain Controller,DC)
- 密钥分发中心(Key Distribution Center,KDC)
- 账户数据库(Account Database,AD) :类似于SAM数据库,存储所有Client的白名单,只有处于白名单中的Client才可以成功申请TGT
- 身份验证服务(Authentication Service,AS) :为Client生成TGT服务
- 入场卷**认证票据**:为Client生成某个服务的票据
- 票据(Ticket) :票据,网络对象互相访问的凭证
- Master Key/Long-term Key|长期密钥(被Hash加密的用户密钥) :长期密钥,将本机密码进行Hash运算(NTML得到一个Hash Code)我们一般管这样的Hash Code叫做Master Key
- Session Key/Short-term Key|短期会话密钥:短期会话密钥,一种只在一段事件内有效的Key
- krbtgt账户:每个域控制器都有一个kebtgt的用户账户,是KDC的服务账户,用来创建票据赋予服务(TGS)加密的密钥
02 黄金票据(Golden Ticket)伪造&传递攻击
在认证过程中,客户端于KAS的通信会得到TGT认购权证,带着TGT认购权向TGS请求,得到ST服务票据,用这个ST服务票据可以来访问应用服务器,域中每个用户的ST服务票据都是由krbtgt用户的密码Hash来计算生曾的,因此只要我们拿到了krbtgt用户hash生成的票据被称为Golden Ticket,此类攻击方法被称作票据传递攻击PTT
2.1 必要知道的信息
1 |
|
2.2 Mimikatz Kerberos Module
Mimikatz的Kerberos模块中常见大概为:列出当前的所有票据(当前用户所在session,效果等同于命令
序号 | 类型 | 命令 |
---|---|---|
1 | 查看伪造票据 | kerberos::list klist |
2 | 黄金票据 | kerberos::golden |
3 | 白银票据 | kerberos::ptt |
1 |
|
2.3 开始伪造凭据
2.3.1 查看域名称
1 |
|
2.3.2 查看krbtgt
用户Hash NTLM
1 |
|
2.3.3 查看当前登录的域账号sid
1 |
|
主要我们需要的SID值所以我们要去掉最后的1174。
如下SID为S-1-5-21-2625511082-1873447012-2633140851-1174
2.3.4 伪造黄金票据并导入
以下环境是在域成员A的Administrator
用户下进行,因为mimikatz
需要管理员权限,生成票据并导入:
1 |
|
使用第三种方式伪造黄金票据
2.3.5 查看生成的票据信息
1 |
|
2.3.6 验证票据
1 |
|
Mimikatz 黄金票据伪造&传递攻击
https://hesc.info/post/mimikatz-gold-note-forgery-passing-attack-8ccoy.html