关于Enumdb

Enumdb是一款针对MySQL和MSSQL关系型数据库的安全渗透后利用工具,该工具主要针对关系型数据库设计,并支持暴力破解和后利用渗透测试。广大研究人员可以提供一个用户名或密码列表,该工具将会在每个主机中寻找能够匹配的有效凭证。默认配置下,Enumdb将会使用新发现的凭证信息,并通过对表或列名的关键字搜索来自动搜索敏感数据字段,最后将所有信息提取出来并写入到.csv或.xlsx输出文件中。

需要提取的数据行数、数据库/表黑名单和搜索的关键字都可以在enumdb/config.py文件中修改编辑。

工具安装

Enumdb基于Python 3开发,并在基于Debian的Linux系统上进行过测试。因此,我们首先需要在本地设备上安装并配置好Python 3环境。需要注意的是,该工具仍然兼容Python 2.7和其他的Linux发行版。

接下来,广大研究人员可以使用下列命令将该项目源码克隆至本地:

git clone https://github.com/m8r0wn/enumdb

然后切换到项目目录中,并运行安装脚本完成Enumdb的安装:

cd enumdb

python3 setup.py install

工具选项

命令参数

optional arguments:

  -h, --help          显示工具帮助信息和退出

  -T MAX_THREADS      设置最大线程(默认:10)

  -v                  Verbose模式输出

 

Connection:

  -port PORT          指定非标准端口

  -t {mysql,mssql}      指定数据库类型

  target               指定目标数据库服务器

 

Authentication:

  -u USERS            设置单个用户名

  -U USERS            指定Users.txt文件

  -p PASSWORDS       设置单个密码 

  -P PASSWORDS       指定Password.txt文件

 

Enumeration:

  -c, --columns        在列名中搜索关键字(默认:表名)

  -r {none,csv,xlsx}    提取数据并创建输出报告

 

Additional Actions:

  --brute             仅开启暴力破解功能

  --shell             启动SQL Shell

Shell命令

enumdb#> help

...

edb_databases                    - 查看所有的数据库

edb_tables [DB]                  - 查看数据库中所有的表

edb_columns [table].[DB]         - 查看表中所有的列

edb_dump [table].[DB] [#rows]    - 从表中获取数据

[SQL Query]                      - 执行原始SQL查询

工具使用

连接一个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

注意事项

如果在使用该工具时遇到了和MySQLdb相关的问题,可以尝试部署额外的MySQL资源以解决问题。

Debian / Ubuntu

sudo apt-get install python3-dev default-libmysqlclient-dev build-essential

Red Hat / CentOS

sudo yum install python3-devel mysql-devel

许可证协议

本项目的开发与发布遵循GPL-3.0开源许可证协议。

项目地址

Enumdb:【GitHub传送门

参考资料

https://github.com/PyMySQL/mysqlclient-python

本文作者:Alpha_h4ck, 转自FreeBuf