Metabase CVSS 10.0 未认证 SQL 注入深度剖析:密码重置接口如何变成管理员接管通道
NVD 官方编号 CVE-2026-72898 | CISA KEV 已收录 | 已被在野利用(0-day)| 修复截止 2026-08-14
引言
2026 年 8 月 10 日,开源商业智能(BI)平台 Metabase 披露了一枚重量级漏洞:CVE-2026-72898,CVSS 评分 10.0(Critical)。攻击者无需任何认证,仅通过一个精心构造的请求打到 /api/session/reset_password 端点,就能向 Metabase 应用数据库注入任意 SQL,进而获得已连接 Metabase 实例的管理员权限。
更令人警惕的是,Metabase 官方在 8 月 6 日的安全公告中确认:Metabase Cloud 已被攻击者利用一枚"未知(0-day)"漏洞成功入侵——这正是 CVE-2026-72898。CISA 已于 8 月 11 日将该漏洞列入 KEV(已知被利用漏洞)目录,要求联邦机构在 2026 年 8 月 14 日前完成修复(BOD 26-04)。
这是自托管 BI 平台安全的一个标志性事件:一个 CVSS 满分、未认证、在野利用的 SQL 注入漏洞,攻击面覆盖 Metabase 0.58 ~ 0.63 全系列版本,且官方确认"已存在活跃利用"。
本文基于 NVD 官方记录、Metabase 官方安全公告与 GitHub Security Advisory、CISA KEV 目录,完整拆解漏洞原理、版本影响矩阵、攻击链、IoC 特征与修复方案。
漏洞速览
| 项目 | 详情 |
|---|---|
| 漏洞编号 | CVE-2026-72898(GHSA-vwf4-m7j8-wcjf) |
| 影响组件 | Metabase(开源 BI 平台)与 Metabase Enterprise |
| 漏洞类型 | SQL 注入(CWE-89:特殊元素中和不当) |
| CVSS | 10.0 Critical(v3.1 与 v4.0 均为 10.0) |
| 攻击向量 | AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H(网络、低复杂度、无需认证) |
| 利用方式 | 未认证攻击者构造请求打到密码重置端点注入 SQL |
| 利用效果 | 获取 Metabase 实例管理员访问权限 |
| 在野利用 | 是(Metabase Cloud 被 0-day 攻击,官方确认) |
| KEV 状态 | CISA KEV 2026-08-11 收录,BOD 26-04 截止 2026-08-14 |
| 修复版本 | 0.58.24 / 0.59.21 / 0.60.17 / 0.61.11 / 0.62.9 / 0.63.5(含对应 Enterprise 1.x) |
| 缓解措施 | 阻塞 /api/session/reset_password 端点(临时 workaround) |
漏洞根因:密码重置流程的 SQL 注入
触发条件
Metabase 的密码重置流程是:用户请求重置密码 → 系统生成重置 token → 用户通过重置链接设置新密码。漏洞出在这个流程的 端点参数处理 上。
NVD 官方描述:Metabase 允许远程未认证攻击者通过 /reset_password 数据库端点注入任意 SQL,并获取已连接 Metabase 实例的管理员访问权限。
关键要素:
- 攻击面:/api/session/reset_password 端点(无需认证)
- 攻击复杂度:低
- 前置条件:无(无需认证、无需用户交互)
- 后果:
- 修改应用配置
- 窃取已连接数据库的存储凭据
- 读取/导出所有通过这些连接可访问的数据
- 获取管理员权限为什么 CVSS 是 10.0
CVE-2026-72898 的 CVSS 3.1 向量为 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H,CVSS 4.0 向量 CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H——每一项都打在最高档:
| 维度 | 取值 | 含义 |
|---|---|---|
| 攻击向量 | N(网络) | 远程可利用 |
| 攻击复杂度 | L(低) | 无特殊条件 |
| 权限要求 | N(无) | 未认证即可 |
| 用户交互 | N(无) | 无需受害者操作 |
| 影响范围 | C(改变) | 波及连接的其他数据库 |
| 机密/完整/可用性 | H(高) | 三性全部高危 |
结果:一个未认证攻击者只需向 Metabase 实例发送一个构造请求,就能接管实例并触及其连接的所有数据源。
受影响版本矩阵
| 版本分支 | 受影响范围 | 修复版本 |
|---|---|---|
| Metabase OSS 0.58.x | 0.58.0 ~ 0.58.23 | 0.58.24 |
| Metabase OSS 0.59.x | 0.59.0 ~ 0.59.20 | 0.59.21 |
| Metabase OSS 0.60.x | 0.60.0 ~ 0.60.16 | 0.60.17 |
| Metabase OSS 0.61.x | 0.61.0 ~ 0.61.10 | 0.61.11 |
| Metabase OSS 0.62.x | 0.62.0 ~ 0.62.8 | 0.62.9 |
| Metabase OSS 0.63.x | 0.63.0 ~ 0.63.4 | 0.63.5 |
| Enterprise 1.x | 对应各分支 | 对应 1.xx.xx 修复版 |
| 0.58 以下 | 不受影响 | - |
注意:版本 0.58 以下的 Metabase 不受影响(根据 Metabase 官方公告与 NVD CPE 配置)。
攻击链拆解
Metabase 官方披露的攻击模式(IoC 特征)
Metabase 官方在安全公告中明确给出了已观测到的攻击模式:
攻击模式(来自 Metabase 官方公告):
1. POST /api/session/reset_password → 返回 HTTP 400 状态码
2. GET /api/user/current → 返回 HTTP 200 状态码Metabase 官方建议:如果在应用日志或服务器入口日志中发现这种模式,很可能实例已被入侵。
完整攻击链
1. 攻击者向目标 Metabase 实例发送构造的 POST 请求到 /api/session/reset_password
(利用密码重置流程的 SQL 注入点,注入恶意 SQL 到应用数据库)
2. 注入的 SQL 执行,攻击者获得管理员访问权限(创建管理员账号/提升权限)
3. 攻击者修改应用配置、读取已连接数据库凭据
4. 攻击者导出/窃取通过连接可访问的数据
5. 攻击者可能在企业内横向移动(读取其他已连接数据源)从 0-day 到 CVSS 10 的 72 小时
Metabase 官方 8 月 6 日安全公告透露了时间线:
8/6 Metabase 官方公告:Metabase Cloud 被未知(0-day)漏洞攻击
→ 立即阻断攻击端点 → 快速定位并修补漏洞
8/10 NVD 发布 CVE-2026-72898(CISA 作为 CNA 分配)
8/11 CISA 将 CVE-2026-72898 列入 KEV 目录(BOD 26-04 截止 8/14)
8/12 NVD 更新分析核心警示:Metabase Cloud(托管版)已在官方修补前被 0-day 攻击利用。自托管实例可能同样存在风险,需立即排查。
修复与缓解方案
P0:升级到修复版本(最高优先级)
- Metabase Cloud:官方已修补(无需操作)
- 自托管 OSS:
0.58.x → 0.58.24 或更高
0.59.x → 0.59.21 或更高
0.60.x → 0.60.17 或更高
0.61.x → 0.61.11 或更高
0.62.x → 0.62.9 或更高
0.63.x → 0.63.5 或更高
- Enterprise:升级到对应 1.x 修复版本版本检查:点击 Metabase 界面右上角"齿轮/网格"图标 → "About Metabase" 或 "Help > About Metabase" 查看当前版本。
P1:临时缓解措施(无法立即升级时)
- 阻塞 /api/session/reset_password 端点(Web 防火墙 / 反向代理 / 入口网关)
- 若 Metabase 暴露在公网,考虑立即下线或加认证前置P2:入侵排查清单(Metabase 官方建议)
如果怀疑已被入侵:
1. 撤销所有活跃用户会话:
- 连接 Metabase 应用数据库,删除 core_session 表所有行
2. 审查并移除不认识的 API 密钥
3. 审计管理员账号是否有未授权变更
4. 轮换所有已连接数据库的凭据
5. 检查 Metabase 活动日志与查询历史
6. 检查数据仓库日志是否存在可疑访问P3:长期加固
- 公网暴露面收敛:自托管 BI 平台不直接暴露公网,加 VPN / 认证前置
- 最小权限:Metabase 连接的数据库账号遵循最小权限原则
- 凭据管理:Metabase 存储的连接凭据独立管理,避免复用生产凭据
- 日志审计:启用 Metabase 活动日志,配合 SIEM 监控异常模式
(重点监控:POST reset_password 400 + GET user/current 200 组合)结语
CVE-2026-72898 是一次教科书级的"满分未认证注入"事件:
- CVSS 10.0 的含金量被实战验证——未认证、远程、低复杂度、管理员接管、数据泄露
- 在野 0-day 利用发生在官方修补之前,证明漏洞已被攻击者武器化
- CISA KEV + BOD 26-04 截止 8/14 将应急窗口压缩到 72 小时
对自托管 BI 平台(Metabase、Superset、Grafana 等同源)的运维者而言,这是一个明确的信号:凡是"密码重置"这类看似无害的业务端点,都可能成为未认证 SQL 注入的入口。 升级到修复版本 + 收敛公网暴露 + 建立异常 IoC 监控,是当下最紧迫的三件事。
参考来源
- NVD 官方:CVE-2026-72898 Detail(CISA CNA 分配,CVSS 10.0,KEV 状态)
- Metabase 官方安全公告:Security update available for Metabase - Please upgrade now (2026-08-06)
- Metabase GitHub Advisory:GHSA-vwf4-m7j8-wcjf - SQL injection using an unauthenticated endpoint leading to admin access
- CISA KEV 目录:Known Exploited Vulnerabilities Catalog - CVE-2026-72898(BOD 26-04,截止 8/14)
- IONIX 威胁中心:CVE-2026-72898 – Unauthenticated SQL Injection / Admin Takeover (2026-08-11)

