Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
phpMyAdmin-CVE-2020-5504-Exploit — 授权的 SQL 注入利用框架,针对 phpMyAdmin 中的 CVE-2020-5504,具备自动化数据库枚举、盲注、代理支持以及结构化报告功能,适用于渗透测试与安全研究。 | Kitploit
工具/GitHubGitHub/cerberusmrxi/phpmyadmin-cve-2020-5504-exploit
侦察漏洞扫描器漏洞利用Web应用程序漏洞利用信息收集Web安全渗透测试数据库安全

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
GitHub
cerberusmrxi/phpmyadmin-cve-2020-5504-exploit

phpMyAdmin-CVE-2020-5504-Exploit

授权的 SQL 注入利用框架,针对 phpMyAdmin 中的 CVE-2020-5504,具备自动化数据库枚举、盲注、代理支持以及结构化报告功能,适用于渗透测试与安全研究。

查看仓库
211个月前尚未审核

CVE-2020-5504 phpMyAdmin 安全评估工具

用于识别和验证 phpMyAdmin 部署中 CVE-2020-5504 的授权安全测试与研究框架

VersionPythonLicenseSecurity ResearchCVEPull Requests

概述 · 功能特性 · 安装 · 使用方法 · 报告 · 架构 · 贡献

负责任使用声明: 本项目仅适用于您拥有或明确授权评估的系统。未经书面许可和明确的测试范围,请勿将其用于公共、第三方或生产系统。


截图

CLI 输出使用方法
CLI OutputUsage

概述

CVE-2020-5504 是一个影响 phpMyAdmin 用户账户页面的 SQL 注入漏洞。根据 phpMyAdmin 官方公告,phpMyAdmin 4.x 系列中早于 4.9.4 的版本以及 phpMyAdmin 5.0.0 均受影响;公告建议 4.x 系列升级至 4.9.4 或更高版本,5.x 系列升级至 5.0.1 或更高版本。[1] 国家漏洞数据库记录显示,利用该漏洞需要有效的 MySQL 账户才能访问服务器。[2]

本项目为授权渗透测试、受控验证和安全研究提供了结构化的工作流程。它旨在帮助评估人员对目标进行指纹识别、验证目标是否疑似受影响、记录证据,并生成结构化报告以用于修复跟踪。

项目目标

该框架围绕四个目标进行组织:

  1. 识别 phpMyAdmin 安装并收集与版本相关的指标。

  2. 验证 在可能的情况下,使用受控、非破坏性的检查来验证疑似暴露。

  3. 评估 使用可配置的限制、重试行为和可选代理来评估授权目标。

  4. 报告 以易于审查、归档和集成到工作流程中的格式呈现发现结果。

本项目不是什么

本项目不能替代补丁修复、供应商指导、安全配置或正式的渗透测试授权流程。它不保证能检测到每种部署、配置、版本或网络状况。所有结果都应人工审查,并作为评估证据而非自动安全结论来处理。


目录

  • 概述

  • 负责任使用

  • 功能特性

  • 评估工作流程

  • 环境要求

  • 安装

  • 使用方法

  • 操作模式

  • 命令行选项

  • 配置

  • 报告

  • 架构

  • 故障排除

  • 修复指导

  • 开发

  • 贡献

  • 更新日志

  • 许可证

  • 致谢

  • 联系与支持

  • 参考资料


负责任使用

必须获得授权

仅当您获得资产所有者的明确授权时,才可对资产运行此工具。授权应明确目标、允许的测试时间窗口、允许使用的技术、源 IP、数据处理要求、升级联系人和停止条件。

切勿仅仅因为互联网系统可访问就对其进行测试。 可访问性不等于许可。

数据处理

评估模式可能会产生有关数据库、表、列或记录的信息。将所有输出视为潜在敏感信息。使用适当的访问控制存储报告,避免在 shell 历史记录中留下机密信息,在参与规则要求时加密报告,并在参与结束后安全删除临时数据。

操作保障

在开始评估之前,请确认您拥有已知良好的备份或恢复流程、与系统所有者的沟通渠道,以及记录在案的回滚或停止计划。只要有可能,优先使用隔离的测试环境。使用能够回答评估问题的最低侵入性模式。


功能特性

领域能力描述
发现自动化指纹识别识别可能的 phpMyAdmin 部署并收集版本指标。
验证漏洞验证执行受控检查,并以面向置信度的方式处理结果。
工作流程多种操作模式支持检测、验证、研究和试运行工作流程。
会话处理CSRF 令牌管理提取并管理应用程序流程所需的 CSRF 相关值。
认证多信号验证使用多个指标以减少错误的认证结果。
评估数据库枚举支持对数据库、表、列和选定数据进行授权枚举。
注入研究盲注技术在实现允许的情况下,支持基于布尔和基于时间的盲注研究工作流程。
报告JSON、HTML 和 TXT为不同受众生成结构化、样式化和纯文本输出。
可靠性重试和退避以可配置的行为重试瞬时请求。
集成代理支持可与 Burp Suite 或其他 HTTP 拦截代理配合使用。
可用性丰富的终端界面提供彩色输出、进度指示器和可读的状态消息。
诊断详细日志记录为授权的故障排除提供额外的诊断信息。

评估工作流程

推荐的工作流程有意采用分阶段方式,以便评估人员可以从影响最小的活动开始,仅在获得授权后才扩大范围。``` ┌──────────────────┐ │ Define scope │ Confirm written authorization and test boundaries └────────┬─────────┘ │ ▼ ┌──────────────────┐ │ Detect │ Identify phpMyAdmin and collect version indicators └────────┬─────────┘ │ ▼ ┌──────────────────┐ │ Verify │ Perform controlled vulnerability checks └────────┬─────────┘ │ ▼ ┌──────────────────┐ │ Assess, if │ Continue only when explicitly authorized │ approved │ └────────┬─────────┘ │ ▼ ┌──────────────────┐ │ Report │ Preserve evidence, limits, timestamps, and conclusions └──────────────────┘

阳性结果应结合目标版本、认证上下文、请求证据及参与范围进行复核。阴性结果并不能证明部署是安全的;它可能反映出版本差异、访问控制、路由、应用定制、速率限制或可见性不足等问题。

---

## 要求

### 运行时要求

| 要求 | 支持的基线 |
| --- | --- |
| 操作系统 | Linux、macOS 或 Windows |
| Python | 3.6 或更高版本,受依赖兼容性约束 |
| 包管理器 | `pip` |
| 版本控制 | Git(从仓库安装时) |
| 网络访问 | 可连接到明确授权的评估目标 |

### Python 依赖

项目目前预期使用以下包:```
requests>=2.31.0
rich>=13.7.0
colorama>=0.4.6
dataclasses>=0.6; python_version < "3.7"

对于可复现的安装,建议优先使用仓库中的 requirements.txt 文件,而不是逐个安装软件包。


安装

Linux 和 macOS```bash

git clone https://github.com/CerberusMrXi/phpMyAdmin-CVE-2020-5504-Exploit cd phpMyAdmin-CVE-2020-5504-Exploit

python3 -m venv .venv source .venv/bin/activate python -m pip install --upgrade pip python -m pip install -r requirements.txt

chmod +x start.sh quick.sh exploit.py

启动引导式界面:```bash
./start.sh

Windows```

git clone https://github.com/CerberusMrXi/phpMyAdmin-CVE-2020-5504-Exploit Set-Location phpMyAdmin-CVE-2020-5504-Exploit

py -m venv .venv ..venv\Scripts\Activate.ps1 python -m pip install --upgrade pip python -m pip install -r requirements.txt

.\start.bat

如果 PowerShell 执行策略阻止启动器运行,请在授权环境中使用该仓库文档中记载的 PowerShell 入口点:```
powershell -ExecutionPolicy Bypass -File .\start.ps1

手动安装依赖

仅在 requirements.txt 不可用,或您有意自行管理依赖时,才使用此方法:```bash python -m pip install "requests>=2.31.0" "rich>=13.7.0" "colorama>=0.4.6"

---

## 使用方法

以下示例使用 `https://authorized.example/phpmyadmin` 作为占位符。请仅将其替换为明确属于您授权范围内的目标。

### 检测模式

检测模式是推荐的起点。它旨在对应用程序进行指纹识别并收集版本信息,而不会尝试进行漏洞利用。```bash
python exploit.py \
  --url https://authorized.example/phpmyadmin \
  --mode detect

原始界面中的短格式标志在适用时同样受支持:```bash python exploit.py -u https://authorized.example/phpmyadmin -m detect

### 验证模式

验证模式旨在用于受控的漏洞测试。仅在参与方明确允许验证活动,且所需凭据已通过批准的方式提供时,方可使用。```bash
python exploit.py \
  --url https://authorized.example/phpmyadmin \
  --mode verify \
  --username "$PMADB_USERNAME" \
  --password "$PMADB_PASSWORD"

避免在命令中直接放置真实密码,因为命令行可能会被存储在 Shell 历史记录中,或暴露给本地进程检查。

研究模式

研究模式可能会执行更广泛的授权评估活动和数据枚举。它应仅限于专用测试环境,或已获得针对所请求范围明确书面批准的参与项目。```bash python exploit.py
--url https://authorized.example/phpmyadmin
--mode research
--username "$PMADB_USERNAME"
--password "$PMADB_PASSWORD"
--max-databases 20
--max-tables 50

### 试运行模式

试运行模式可用于验证命令构造、审查工作流行为以及测试配置,而无需执行侵入性操作。```bash
python exploit.py \
  --url https://authorized.example/phpmyadmin \
  --dry-run

代理辅助评估

在测试期间需要检查请求和响应时,可通过经授权的拦截代理路由流量:```bash python exploit.py
--url https://authorized.example/phpmyadmin
--mode verify
--proxy http://127.0.0.1:8080

仅在交战规则允许且代理配置为避免收集或保留不必要敏感数据时,才使用代理。

### 定向数据库评估

当范围文档指定了特定数据库时,在实现支持的情况下,将评估限制在该数据库范围内:```bash
python exploit.py \
  --url https://authorized.example/phpmyadmin \
  --mode research \
  --database target_database \
  --max-tables 25

详细诊断信息

在排查连接失败、意外响应或配置问题时,启用详细输出:```bash python exploit.py
--url https://authorized.example/phpmyadmin
--mode verify
--verbose

### 交互式界面

交互式启动器推荐给首次使用的用户,因为它提供引导式提示、模式选择、进度指示器以及彩色编码的状态输出。```bash
# Linux/macOS
./start.sh

# Windows
start.bat

操作模式

模式用途预期影响推荐使用场景
detect对应用程序进行指纹识别并确定版本指标。无或极小在授权范围内进行初步侦察。
verify通过受控检查测试目标是否存在漏洞。低在授权评估期间进行确认。
research开展更广泛的评估和授权枚举。高专用实验室或获得明确批准的测试项目。
dry-run模拟工作流行为,不执行侵入性操作。无配置和命令验证。

模式名称描述的是预期工作流,而非每种配置下的行为保证。在对任何在线系统使用任何模式之前,请先审查实现方式和测试规则。


命令行选项

以下选项由当前项目接口提供。运行 python exploit.py --help 以确认您当前版本中可用的确切选项名称。

下载工具