前言
辛苦公司搞出一整套内网环境作为CTF培训,让我这种苦于碰不上多层网络以及域环境的菜鸟练手。
但可惜靶场也搭载很内网的地方,进入攻击机就要上两层堡垒机,实在是又卡又不方便,因此很多地方都没实操。参考了同事更详细的笔记。
网络结构
整个网络大致如下。
第一层网络
192.168.100.28(攻击机)
192.168.100.2(PublicCMS)
192.168.100.3(kibana)
192.168.100.4(Typeecho)
第二层网络
192.168.200.4(linux)
第三层网络
172.16.10.100(mysql/web)
172.16.10.102(lisi-PC)
172.16.10.104(wangwu-PC)
172.16.10.106(zhangsan-PC)
172.16.10.200(域控)
172.16.10.220(docker宿主)
第一层网络
第一层网络主要考信息收集和已有CVE利用
192.168.100.2
PublicCMS,弱密码admin/admin进后台,存在CVE-2018-12914,上传一个目录穿越的zip文件解压到web目录即可getshell。
这里解压路径就有讲究了,一般可以从临时文件目录也就是tomcat/temp来确认tomcat根目录。但如果web目录不是tomcat/webapps/ROOT或者tomcat/webapps/publiccms,也没什么办法。
其次关于目录穿越型zip文件的创建,一般人会选择在linux系统中创建,或者使用python脚本,但其实windows的7zip就支持目录穿越的zip文件创建。
只需要正常压缩一个jsp文件,改名../../../../tomcat/webapps/ROOT/shell.jsp即可。
192.168.100.3为kibana,CVE-2019-7609利用
192.168.100.4为Typeecho,CVE-2018-18753利用
均不赘述,都为简单漏洞利用。
均为root/system,无需提权,其中重点是192.168.100.4的shell,其为通向第二层网络的跳板。
在192.168.100.4的/root/.ssh/known_hosts发现ssh key,可以用来登录192.168.200.4。
在192.168.200.4的/password.txt中发现复杂密码,使用发现为192.168.100.4的密码,同时爆破出192.168.200.4密码为弱密码
同时netstat -ano发现172.16.10.100的tcp连接
第二层网络
至此可通过xshell/ssh建立攻击机——192.168.100.4——192.168.200.4——172.16.10.100的稳定socks5隧道
ssh 192.168.100.4,socks5代理到本地5667
使用5667代理,ssh 192.168.200.4,socks5代理到本地5777
Proxifier全局代理,访问172.16.*.*走5777,此时浏览器可访问http://172.16.10.100,进入了第三层网络。
第三层网络
访问http://172.16.10.100/show.php报错泄露绝对路径,3306爆破出root弱密码,外连mysql into outfile写入webshell。
同时在my1库中发现zhangsan,lisi等账户密码。
172.16.10.100为system权限,存在域环境core.com,mimikatz抓取密码,2012服务器仅能获取本地管理员hash,可pth到172.16.10.100自身,无太大用处。
arp,net user /domain等方式收集到172.16.10.102,172.16.10.104,172.16.10.200(域控)信息
上传tunnel.php,socks5代理到本地4444
Proxifier设置mstsc.exe,smbexec.exe走4444
这样可以利用my1库中发现的lisi登录172.16.10.102,ipc$或者RDP均可
后面就参考的同事的笔记了,除了ipc$到域控的操作其他都没做,两层堡垒机操作太痛苦了。
172.16.10.102发现getlog.exe,分析(还不会,略过)之后发现域控密码,ipc$到172.16.10.200完成控制,此时完成对整个域内环境控制。包括已发现的172.16.10.104和未发现的172.16.10.106。
ipc$为账户密码远控,pth为hash远控,以smbexec.exe为例,core/administrator为core.com的域管理员
smbexec.exe core/administrator:ADpassword@172.16.10.200
smbexec.exe core/administrator@172.16.10.200 -hashes :NTLMhash
172.16.10.200根目录发现C:log.bat,为scp 172.16.10.220批处理,因此可直接在172.16.10.200上ssh至172.16.10.220
172.16.10.220为docker,错误配置导致docker逃逸(还不会,略过)
本文始发于微信公众号(珂技知识分享):内网渗透CTF培训
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论