Jboss介绍
JBoss是⼀个基于J2EE的开发源代码的应⽤服务器。JBoss代码遵循LGPL许可,可以在任何商业应⽤中免费使⽤。JBoss是⼀个管理EJB的容器和服务器,⽀持EJB1.1、EJB 2.0和EJB3的规范。但JBoss核⼼服务不包括⽀持servlet/JSP的WEB容器,⼀般与Tomcat或Jetty绑定使⽤。在J2EE应⽤服务器领域,JBoss是发展最为迅速应⽤服务器。由于JBoss遵循商业友好的LGPL授权分发,并且由开源社区开发,这使得JBoss⼴为流⾏。
------------------------
CVE-2015-7501
Jboss JMXInvokerServlet 反序列化漏洞
---------------------
漏洞介绍
这是经典的JBoss反序列化漏洞,JBoss在/invoker/JMXInvokerServlet请求中读取了⽤户传⼊的对象,然后我们利⽤Apache Commons Collections中的 Gadget 执⾏任意代码
-----------------------
影响范围
JBoss Enterprise Application Platform 6.4.4,5.2.0,4.3.0_CP10
JBoss AS (Wildly) 6 and earlier
JBoss A-MQ 6.2.0
JBoss Fuse 6.2.0
JBoss SOA Platform (SOA-P) 5.3.1
JBoss Data Grid (JDG) 6.5.0
JBoss BRMS (BRMS) 6.1.0
JBoss BPMS (BPMS) 6.1.0
JBoss Data Virtualization (JDV) 6.1.0
JBoss Fuse Service Works (FSW) 6.0.0
JBoss Enterprise Web Server (EWS) 2.1,3.0
----------------------
环境搭建
cd vulhub-master/jboss/JMXInvokerServlet-deserialization
docker-compose up -d
----------------------
漏洞复现
搭建环境打开
.POC,访问地址
http://1.15.136.212:8080/invoker/JMXInvokerServlet
返回如下,说明接口开放,此接口存在反序列化漏洞
访问地址/invoker/JMXInvokerServlet自动下载如下文件
下载工具
GitHub - frohoff/ysoserial: A proof-of-concept tool for generating payloads that exploit unsafe Java object deserialization.
将反弹shell进行base64编码
打开kali开始监听
---------------------------
漏洞修复
升级版本
----------------------------------
CVE-2017-7504
JBossMQ JMS 反序列化漏洞
-----------------
漏洞介绍
JBoss AS 4.x及之前版本中,JbossMQ实现过程的JMS over HTTP Invocation Layer的
HTTPServerILServlet.java⽂件存在反序列化漏洞,远程攻击者可借助特制的序列化数据利⽤该漏洞执行任意代码执行
----------------
影响范围
JBoss 4.x 以及之前的所有版本
----------------
环境搭建
cd vulhub-master/jboss/CVE-2017-7504
docker-compose up -d
----------------
漏洞复现
访问漏洞地址
http://1.15.136.212:8080/jbossmq-httpil/HTTPServerILServlet
使用jexboss.py获取shell
成功获取
-------------------------------------
CVE-2017-12149
JBoss 5.x/6.x反序列化漏洞
漏洞简述
该漏洞为 Java反序列化错误类型,存在于 Jboss 的 HttpInvoker 组件中的 ReadOnlyAccessFilter过滤器中。该过滤器在没有进行任何安全检查的情况下尝试将来⾃客户端的数据流进行反序列化,从而导 致了漏洞
-------------------
漏洞范围
JBoss 5.x/6.x
------------------
环境搭建
cd vulhub-master/jboss/CVE-2017-12149
docker-compose up -d
-----------------
漏洞复现
访问漏洞页面,看jboss版本
http://1.15.136.212:8080
显示500证明存在漏洞
打开jboss反序列化软件 将网址放入 cmd内输入想执行的代码
---------------------
漏洞修复
1.不需要 http-invoker.sar 组件的⽤户可直接删除此组件。
2.添加如下代码⾄ http-invoker.sar 下 web.xml 的 security-constraint 标签中,对 http invoker 组件
进行访问控制:
3.升级新版本。
-----------------------------------
Administration Console弱口令
漏洞描述
Administration Console管理⻚⾯存在弱⼝令,`admin:admin`,登陆后台上传war包 , getshell
---------------------
影响版本
全版本
--------------------
环境搭建
因为这里用的环境是CVE-2017-12149的靶机
cd vulhub-master/jboss/CVE-2017-12149
docker-compose up -d
-------------------
密码文件
/jboss-6.1.0.Final/server/default/conf/props/jmx-console-users.properties
账户密码:admin:vulhub
-------------------
漏洞复现
搭建好环境 进入
登录后台
admin vulhub
点击上传 上传一个木马文件
上传成功
访问jsp文件并用哥斯拉进行连接测试
-----------------------------------
低版本JMX Console未授权
低版本JMX Console未授权访问Getshell
漏洞描述
此漏洞主要是由于JBoss中/jmx-console/HtmlAdaptor路径对外开放,并且没有任何身份验证机制,导致攻击者可以进⼊到 jmx控制台,并在其中执⾏任何功能。
------------------
影响范围
Jboss4.x以下
------------------
环境搭建
cd vulhub-master/jboss/CVE-2017-7504
docker-compose up -d
-------------------
漏洞复现
访问
http://1.15.136.212:8080/jmx-console/
点击左侧的deployment
在右边的输入框内输入下载的war地址然后点击invoke
提示成功证明上传成功
访问上传的war内的jsp用哥斯拉进行测试连接
-----------------------------------------
⾼版本JMX Console未授权
漏洞描述
JMX Console默认存在未授权访问,直接点击JBoss主⻚中的 JMX Console 链接进⼊JMX Console页面, 通过部署war包 , getshell
------------------------
影响版本
Jboss6.x以下
------------------------
环境搭建
cd vulhub-master/jboss/CVE-2017-12149
docker-compose up -d
------------------------
漏洞复现
http://1.15.136.212:8080/jmx-console/
因为使用环境不存在该漏洞所以需要输⼊账户密码:admin admin
本地搭建部署点
进⼊service=MainDeployer⻚⾯之后,找到methodIndex为17或19的deploy 填写远程war包地址进⾏远程部署
用冰蝎生成jsp木马--->压缩到zip中--->改后缀名为.war
连接Webshell......
----------------------------
实战挖洞
FOFA语句
title=
"Welcome to JBoss AS" && country!="CN"