SuperAPI AI 工具集

mysql-pentesting

安全与审计

查看项目

更新于 10-16 04:41

技能介绍

用途

本技能是一套针对 MySQL 数据库服务(默认 3306 端口)的渗透测试方法论,用于在授权安全测试中系统化地评估 MySQL/MariaDB 服务的安全状况。当扫描发现 3306 端口开放、需要测试 MySQL 认证强度、枚举数据库内容,或尝试通过数据库获取系统权限时,可按本方法论分阶段推进。

主要能力

方法论按六个阶段组织,并配有整体决策树:

  • Phase 1 服务发现与版本识别:使用 Nmap 的 mysql-info、mysql-enum 等脚本及 Metasploit 的 mysql_version 模块探测版本;识别操作系统与运行用户;检测 secure_file_priv、local_infile、plugin_dir 等关键配置。
  • Phase 2 认证测试:尝试匿名/空密码登录、默认凭据(如 root 空密码、root:root、root:toor 等)、CVE-2012-2122 认证绕过,以及 hydra、Metasploit 暴力破解;同时覆盖本地 socket 认证与凭据文件检测。
  • Phase 3 数据库枚举:通过 information_schema 枚举库、表、列;使用 SHOW GRANTS 与 mysql.user 枚举权限;提取用户哈希,并可用 Metasploit 的 mysql_hashdump、mysql_enum、mysql_schemadump 自动化。
  • Phase 4 权限提升:UDF 提权(Linux 加载 .so、Windows 加载 .dll,调用 sys_exec());文件读写(LOAD_FILE() 读取、INTO OUTFILE 写入 Webshell、.pth、SSH 公钥、Cron Job);LOAD DATA LOCAL INFILE 客户端文件读取与 Rogue MySQL Server 攻击;以及通过 ! sh 获取 MySQL 客户端 Shell。
  • Phase 5 MySQL 注入利用:UNION 注入、报错注入、布尔/时间盲注、带外注入(OOB)及空格绕过技巧。
  • Phase 6 已知漏洞:CVE-2012-2122 认证绕过、CVE-2023-21971(JDBC propertiesTransform RCE)、Rogue/Fake MySQL Server 攻击 JDBC 客户端,以及针对 mysql_native_password、caching_sha2_password 等哈希的破解方式。

此外还提供后渗透本地审计检查清单与关键配置文件路径(Linux 与 Windows)。

使用方式

方法论以决策树形式引导操作,每个阶段给出对应的命令示例,包括 Nmap、Metasploit、hydra、sqlmap、Hashcat、John 等工具的具体调用方式,以及 MySQL 内部 SQL 语句。更完整的 UDF 提权、文件读写、Rogue Server、JDBC 利用与哈希破解命令,指向 references/mysql-techniques.md 深入参考。

适用场景

适用于授权范围内的数据库安全评估、渗透测试与红队作业,例如:端口扫描发现 3306 开放后的后续测试、MySQL 认证强度评估、数据库内容枚举、通过数据库服务实现权限提升或横向移动。

限制

本方法论面向合法授权的安全测试,未提供授权范围、合规要求或法律说明。部分技术依赖特定前提条件,例如 UDF 提权需高权限运行且具备 FILE/SUPER 权限,文件读写受 secure_file_priv 限制,INTO OUTFILE 不能覆盖已有文件,CVE-2012-2122 仅影响特定版本。具体工具版本、平台兼容性与实际效果需以目标环境为准,资料中未提供的内容暂未提供。