社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  DATABASE

Enumdb:一款针对MySQL和MSSQL关系型数据库的安全渗透后利用工具

FreeBuf • 2 年前 • 311 次点击  


关于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 enumdbpython3 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 -reportxlsx 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开源许可证协议。


 项目地址


Enumdbhttps://github.com/m8sec/enumdb


参考资料:

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


精彩推荐







Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/152003
 
311 次点击