🔴 严重 | CVE-2026-47669 — DbGate is cross-platform database manager. In vers...
🔴 《严重安全漏洞: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 |
🔗 参考链接
💬 评论