Redaxo备份插件路径遍历漏洞解析:CVE-2026-21857致任意文件读取

本文详细分析了Redaxo CMS备份插件中存在的高危路径遍历漏洞(CVE-2026-21857)。该漏洞允许具有备份权限的认证用户通过构造恶意路径参数读取Web根目录下的任意文件,包括包含数据库凭证和用户密码哈希的配置文件,可能导致系统完全被攻陷。

Redaxo备份插件路径遍历漏洞解析:CVE-2026-21857致任意文件读取

漏洞概览

Redaxo CMS的备份插件存在路径遍历漏洞,允许具有备份权限的认证用户读取Web根目录下的任意文件。该漏洞被标记为高危级别,CVSS评分为8.3。

技术细节

漏洞成因

备份插件在文件导出功能中未对EXPDIR POST参数进行充分验证。该参数直接使用用户输入,未检查是否包含路径遍历序列(如../)或文档根目录内的绝对路径。

受影响的代码位置

  1. redaxo/src/addons/backup/pages/export.php (第72-76行) - 直接使用$_POST['EXPDIR']
  2. redaxo/src/addons/backup/lib/backup.php (约第413和427行) - 将未净化的用户输入与基础路径连接

攻击向量

攻击者可通过修改EXPDIR参数值为../../../../var/www/html/redaxo/data/core等路径,将敏感文件包含在生成的.tar.gz存档中。

可读取的敏感文件示例

  • redaxo/data/core/config.yml - 包含数据库凭证和所有后端用户的密码哈希
  • .env文件
  • 自定义配置文件
  • 日志文件
  • 上传的恶意文件

影响版本

  • 受影响版本:≤ 5.20.1(已确认可被利用)
  • 修复版本:5.20.2

攻击复现步骤

  1. 以具有备份权限的用户身份登录
  2. 访问"备份 → 导出 → 文件"页面
  3. 使用Burp Suite等工具拦截请求
  4. 将某个EXPDIR[]值修改为../../../../var/www/html/redaxo/data/core
  5. 发送请求并下载生成的存档文件
  6. 解压并打开data/core/config.yml文件

结果:可获取明文数据库密码

潜在影响

  1. 数据库接管:获取数据库凭证后可完全控制数据库
  2. 权限提升:提取密码哈希后进行离线破解,可能获取管理员访问权限
  3. 组合攻击:与其他漏洞结合可能导致远程代码执行
  4. 系统完全沦陷:REDAXO安装实例被完全攻占

CVSS 4.0评分详情

  • CVSS向量:CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:N/VA:N/SC:H/SI:H/SA:N
  • 基础评分:8.3(高危)

安全弱点标识

  • CWE-22:对受限目录的路径名限制不当(路径遍历)
  • CWE-24:路径遍历:’../filedir'

参考信息

  • CVE ID:CVE-2026-21857
  • GHSA ID:GHSA-824x-88xg-cwrv
  • 发现者:Łukasz Rybak
  • 官方修复:https://github.com/redaxo/redaxo/releases/tag/5.20.2
  • NVD记录:https://nvd.nist.gov/vuln/detail/CVE-2026-21857

时间线

  • 2026年1月5日:漏洞发布至GitHub Advisory Database
  • 2026年1月7日:发布至国家漏洞数据库
  • 2026年1月8日:最后更新

修复建议

立即升级Redaxo至5.20.2或更高版本,该版本已修复此路径遍历漏洞。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计