lukasz-rybak/CVE-2026-21857

GitHub: lukasz-rybak/CVE-2026-21857

该项目提供了针对 REDAXO CMS 备份插件路径遍历漏洞(CVE-2026-21857)的技术分析与利用演示。

Stars: 0 | Forks: 0

# CVE-2026-21857: Redaxo 备份插件存在路径遍历导致任意文件读取 ## 概述 | 字段 | 详情 | |---|---| | **CVE ID** | [CVE-2026-21857](https://nvd.nist.gov/vuln/detail/CVE-2026-21857) | | **严重程度** | HIGH | | **公告** | [查看公告](https://github.com/redaxo/redaxo/security/advisories/GHSA-824x-88xg-cwrv) | | **发现者** | [Lukasz Rybak](https://github.com/lukasz-rybak) | ## 受影响产品 - **redaxo/source** (版本: <= 5.20.1) ## CWE 分类 - CWE-22: 对路径名的限制不恰当(“路径遍历”) - CWE-24: 路径遍历: '../filedir' ## 详情 ### 摘要 拥有备份权限的已认证用户可以通过 Backup 插件的文件导出功能中的路径遍历,读取 webroot 内的任意文件。 image image ### 详情 Backup 插件未针对 UI 生成的允许目录列表验证 `EXPDIR` POST 参数。 攻击者可以提供包含 `../` 序列的相对路径(甚至文档根目录内的绝对路径),从而将任何可读文件包含在生成的 `.tar.gz` 存档中。 存在漏洞的代码: - `redaxo/src/addons/backup/pages/export.php` (第 72-76 行) – 直接使用 `$_POST['EXPDIR']` - `redaxo/src/addons/backup/lib/backup.php` (第约 413 行及约 427 行) – 将未经净化的用户输入与基础路径进行拼接 这会导致敏感文件泄露,例如: - `redaxo/data/core/config.yml` → 数据库凭据 + 所有后端用户的密码哈希 - `.env`、自定义配置文件、日志、上传的恶意文件等。 ### 受影响版本 ≤ 5.20.1 (已确认受影响) ### 已修复版本 无 (截至 2025-12-09) ### PoC – 提取数据库凭据和密码哈希 1. 以任何拥有 Backup 权限的用户身份登录 2. 进入 Backup → Export → Files image 3. 使用 Burp Suite 拦截请求 image 4. 将其中一个 `EXPDIR[]` 值更改为 `../../../../var/www/html/redaxo/data/core` image 5. 发送请求 → 下载存档 image 6. 解压并打开 `data/core/config.yml` image 结果:明文数据库密码 image ### 影响 完全攻陷 REDAXO 安装实例: - 接管数据库 - 提取密码哈希 → 离线破解 → 获取管理员权限 - 结合其他漏洞 → RCE 下方的 CVSS 4.0 向量及评分。 ### 致谢 发现者:Łukasz Rybak ## 参考 - https://github.com/redaxo/redaxo/security/advisories/GHSA-824x-88xg-cwrv - https://github.com/redaxo/redaxo/releases/tag/5.20.2 - https://nvd.nist.gov/vuln/detail/CVE-2026-21857 - https://github.com/advisories/GHSA-824x-88xg-cwrv ## 免责声明 此 CVE 是遵循协同漏洞披露规范进行负责任披露的。此处提供的信息仅用于教育和防御目的。
标签:CMS, CVE, CWE-22, EXPDIR, HTTP工具, OpenVAS, Path Traversal, PHP, POC, Redaxo, tar.gz, Web安全, 任意文件读取, 备份插件, 安全公告, 安全防护, 敏感文件, 数字签名, 文件泄露, 权限绕过, 漏洞分析, 漏洞复现, 网络安全审计, 蓝队分析, 路径探测, 路径遍历, 高危漏洞