🔴 《严重安全漏洞:CVE-2026-47669》

CVSS 评分: 严重(9.3)  状态: Received  发布时间: 2026-07-23


漏洞简介

CVE-2026-47669 是一个存在于 DbGate(跨平台数据库管理器)中的路径遍历(Path Traversal)漏洞,对应 CWE-22 分类。该漏洞源于 packages/api/src/shell/unzipDirectory.js 文件中的 unzipDirectory() 函数(第 27 行)在处理 ZIP 文件时,未对解压后的文件路径进行有效性验证,未能确保所有提取的文件路径均位于目标输出目录之内。

攻击者可以通过构造一个包含 ../(上级目录跳转)条目的恶意 ZIP 文件,利用该漏洞将文件写入文件系统的任意位置,从而实现任意文件写入(Arbitrary File Write)。

在默认的 Docker 部署环境中,DbGate 以 root 权限运行,并且 none 认证提供者允许攻击者通过 POST /auth/login 接口获取 JWT 令牌(无需任何凭证)。因此,任何与目标网络可达的攻击者均可利用该漏洞进行远程攻击。

该漏洞已在版本 7.1.9 中修复。

影响范围

  • 受影响版本:DbGate 版本 7.1.8 及之前所有版本
  • 修复版本:DbGate 版本 7.1.9
  • CVSS 向量:CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
    • 该向量表明漏洞为网络可访问(AV:N)、攻击复杂度低(AC:L)、无需权限(PR:N)、无需用户交互(UI:N),对机密性、完整性和可用性均造成高影响(VC:H/VI:H/VA:H)。

风险分析

  • 攻击路径:攻击者首先通过 POST /auth/login 接口(使用 none 认证提供者)获取 JWT 令牌,然后利用该令牌向 DbGate 的 API 发送包含恶意 ZIP 文件的请求,触发 unzipDirectory() 函数中的路径遍历漏洞。
  • 攻击后果
    • 任意文件写入:攻击者可将恶意文件(如 Web Shell、恶意脚本、配置文件等)写入文件系统的任意位置,例如覆盖系统关键文件、写入 SSH 授权密钥、植入后门程序等。
    • 权限提升与完全控制:由于 DbGate 在 Docker 容器中以 root 权限运行,攻击者写入的文件也将具有 root 权限,从而可能导致容器内系统的完全控制,甚至进一步逃逸至宿主机(取决于 Docker 配置)。
    • 数据泄露与破坏:攻击者可能通过写入恶意文件篡改数据库配置、窃取敏感数据或破坏系统正常运行。
  • 利用条件:攻击者需要与目标 DbGate 服务网络可达,且目标使用了默认的 none 认证提供者(或未对 API 访问进行有效认证限制)。在默认 Docker 部署下,该条件极易满足,漏洞利用门槛极低。

🔍 技术细节

字段
CVE ID CVE-2026-47669
CVSS 评分 9.3 🔴
严重程度 严重
CVSS 向量 CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
CWE 分类 CWE-22
发布时间 2026-07-23
最后更新 2026-07-23
状态 Received
数据来源 security-advisories@github.com

🔗 参考链接