Enumdb 是一款针对 MySQL 和 MSSQL 的关系型数据库暴力破解及后利用工具。当提供用户名和/或密码列表时,它会轮询每个主机以查找有效凭据。默认情况下,enumdb 会使用新发现的凭据自动通过关键词搜索表名或列名来查找敏感数据字段。这些信息可以被提取并输出到 .csv 或 .xlsx 报告文件中。
近期新增:
-r csv 或 -r xlsx。-v)。提取的行数、数据库与表黑名单以及关键词搜索均可在 enumdb/config.py 中修改。
Enumdb 基于 Debian 系统的 Linux(kali)使用 Python3 设计和测试。不过,该工具也兼容 Python2.7 以及其他 Linux 发行版。
git clone https://github.com/m8r0wn/enumdb
cd enumdb
python3 setup.py install
连接 MySQL 数据库并在表名中搜索关键词(不生成报告)
enumdb -u root -p 'password123' -t mysql 10.11.1.30
使用域凭据连接 MSSQL 数据库,在列名中搜索关键词,并将提取结果输出为 .xlsx 报告:
enumdb -u 'domain\\user' -p Winter2018! -t mssql -columns -report xlsx 10.11.1.30
暴力破解多台 MySQL 服务器以查找默认凭据(不进行数据或表枚举)
enumdb -u root -p '' -t mysql --brute 10.11.1.0-30
暴力破解 MSSQL sa 账户。找到有效凭据后,按表名枚举数据,并将输出写入 .csv 报告:
enumdb -u sa -P passwords.txt -t mssql -columns -report xlsx 192.168.10.10
在系统上生成 SQL shell:
enumdb -u sa -P 'P@ssword1' -t mssql --shell 192.168.10.10
optional arguments:
-h, --help show this help message and exit
-T MAX_THREADS Max threads (Default: 10)
-v Verbose output
Connection:
-port PORT Specify non-standard port
-t {mysql,mssql} Database type
target Target database server(s) [Positional]
Authentication:
-u USERS Single username
-U USERS Users.txt file
-p PASSWORDS Single password
-P PASSWORDS Password.txt file
Enumeration:
-c, --columns Search for key words in column names (Default: table names)
-r {none,csv,xlsx} Extract data and create output report
Additional Actions:
--brute Brute force only (No DB Enumeration)
--shell Launch SQL Shell
enumdb#> help
...
edb_databases - list all databases
edb_tables [DB] - list tables in DB
edb_columns [table].[DB] - list columns in table
edb_dump [table].[DB] [#rows] - Get data from table
[SQL Query] - Execute raw SQL query
如果在 MySQLdb 方面遇到问题,可能需要额外的 MySQL 开发资源:
sudo apt-get install python3-dev default-libmysqlclient-dev build-essential
sudo yum install python3-devel mysql-devel