一款用于在经批准的渗透测试项目中验证 Metabase 部署中是否存在 CVE-2026-59827 的授权安全评估工具。
该工具旨在通过执行受控的概念验证演示来证明漏洞的存在,同时尽量减少影响,而非尝试破坏性或持久性操作。执行的每个操作都会被记录,以提供适合专业安全评估的审计跟踪。
警告
本项目仅适用于您拥有或已获得明确书面许可进行测试的系统。未经授权使用可能违反适用法律和组织政策。
该工具目前支持以下安全演示:
| Technique | Description | Impact |
|---|---|---|
version_disclosure | 演示数据库版本泄露 | 低 |
database_type | 检测后端数据库类型 | 低 |
user_enumeration | 演示当前数据库用户泄露 | 中 |
schema_disclosure | 演示受限的模式泄露 | 中 |
sql_execution | 演示使用无害载荷执行任意 SQL 的能力 | 严重 |
这些演示旨在验证漏洞是否存在,而不会有意修改数据。
安装依赖:
pip install requests
或
pip install -r requirements.txt
示例 requirements.txt
requests>=2.31.0
python3 CVE-2026-59827.py \
-t https://metabase.example.com
该工具将在继续之前请求授权确认。
python3 CVE-2026-59827.py \
-t https://metabase.example.com \
--auth-token YOUR-AUTHORIZATION-TOKEN
python3 metabase_tester.py \
-t https://metabase.example.com \
--demo version_disclosure
可用的演示:
version_disclosure
database_type
user_enumeration
schema_disclosure
sql_execution
python3 CVE-2026-59827.py \
-t https://metabase.example.com
| Option | Description |
|---|---|
-t, --target | 目标 Metabase URL |
--auth-token | 系统所有者提供的授权令牌 |
--demo | 执行特定演示 |
python3 CVE-2026-59827.py \
-t https://metabase.internal \
--auth-token COMPANY-12345 \
--demo database_type
执行的每个操作都会被记录以供审计。
每次运行都会生成一个类似以下的日志文件:
pentest_log_3a7f21bc.json
每条日志条目包含:
示例:
{
"timestamp": "2026-07-23T11:42:58",
"action": "Testing payload",
"details": {
"parameter": "query",
"payload": "' UNION SELECT version()--"
},
"test_id": "3a7f21bc"
}
测试完成后,该工具会生成一份包含以下内容的摘要:
.
├── metabase_tester.py
├── README.md
├── requirements.txt
└── pentest_log_<testid>.json
如果测试确认存在该漏洞:
本软件仅供授权安全测试、安全研究和教育目的使用。
作者对因使用本软件而导致的误用或损害不承担任何责任。
使用本项目即表示您确认:
严禁未经授权使用本软件。
本项目仅供教育和专业渗透测试目的使用。使用前请确保遵守您所在组织的政策和适用法律。