目录
JBOSS简单介绍
JBOSS未授权访问漏洞介绍
漏洞原理
影响版本
漏洞复现
环境搭建
手动漏洞利用
工具漏洞利用
漏洞利用
漏洞修复
JBOSS是一个基于J2EE的开放源代码应用服务器,也是一个管理EJB的容器和服务器,默认使用8080端口监听。
JBOSS未授权漏洞在默认情况下无需账号密码就可以直接访问后台管理控制台页面(http://127.0.0.1:8080/jmx-console),导致攻击者可以获取网站信息、上传webshell,获取服务器权限等。
JBOSS全版本
这里使用vulhub平台的CVE-2017-7504进行复现。
环境搭建
手动漏洞利用
1、找到漏洞利用地点
进入后台管理页面:http://127.0.0.1:8080/jmx-console
(注意,这个靶场是需要账号密码登录,但同时JBOSS存在弱口令,账号密码为admin/admin,进行登录就当做不需要密码登录就好)
进入deployment部署页面,可以发现这里有一个通过URL远程部署war的功能
2、生成war包
那么就尝试上传war包。跟Weblogic远程war部署漏洞一样,先生成一个war文件。
这里就不详细讲了,可以去翻阅之前的文章,可以通过jar命令将jsp脚本生成war文件,也可以使用msf工具进行生成。
我这里使用msf生成一个war包。
3、将war包部署到Web站点上
这里可以使用Apache2进行部署,也可以使用python3在war包目录下开启http server服务实现文件的网络共享。
4、添加URL参数使其远程部署shell
成功页面
4、开启监听
因为使用的msf生成的war包,所以使用msf进行连接
5、访问上传的war文件,使其进行连接
连接成功
工具漏洞利用
使用JexBoss工具,这是一个使用python编写的JBOSS漏洞检测利用工具,可以通过它检测并利用web-console,jmx-console,JMXInvokerServlet这三个漏洞,并且获取一个shell。
下载地址:
进入目录,执行脚本
运行过程中这里会需要输入,yes表示返回一个shell与jboss进行交互。
这里同样也有web-console...就不多说了
直接在fofa上搜索,语句:"jboss" && port="8080" && country="CN"
点击JMX Console看是否能够进入后台
这里存在弱口令,也算是可以直接进入。同样可存在上传口,后面的就不继续了。
- 需要使用jmx-console和web-console界面请增强认证访问
- 关闭jmx-console和web-console界面