firebase:一款功能强大的Firebase数据库安全漏洞与错误配置检测工具

关于firebase

firebase是一款针对Firebase数据库的安全工具,该工具基于Python 3开发,可以帮助广大研究人员针对目标Firebase数据库执行安全漏洞扫描、漏洞测试和错误配置检测等任务。

该工具专为红队研究人员设计,请在获得授权许可后再进行安全测试。

工具要求

当前版本的firebase需要使用到下列非标准Python模块:

dnsdumpster

bs4

requests

工具安装

由于该工具基于Python 3开发,因此我们首先需要在本地设备上安装并配置好最新版本的Python 3环境。

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

代码语言:javascript
复制
git clone https://github.com/Turr0n/firebase.git

然后切换到项目目录中,使用pip工具和项目提供的requirements.txt文件安装该工具所需的其他依赖组件:

代码语言:javascript
复制
cd firebase

pip install -r requirements.txt

工具使用

代码语言:javascript
复制
python3 firebase.py [-h] [--dnsdumpster] [-d /path/to/file.htm] [-o results.json] [-l /path/to/file] [-c 100] [-p 4]

命令行参数

-h:显示工具帮助信息和退出;

-d:已下载HTML文件的绝对路径;

-o:输出文件名称,默认为results.json;

-c:爬取Alexa排名前100万的域名,可以设置具体数量,例如100(即最大100万个);

-p:要执行的进程数量,默认为1;

-l:包含待爬取数据库的文件路径,每行一个数据库名称,该选项不能跟-d或-c一起使用;

--dnsdumpster:使用DNSDumpster API收集数据库信息;

--just-v:忽略没有安全漏洞的数据库;

--amass:amass扫描的输出文件路径 ([-o]选项);

工具使用样例

下列命令将查询Alexa排名前150的域名以及DNSDumpster提供的数据库,结果将存储至results_1.json文件中,整个工具脚本将使用4个并行进程执行任务:

代码语言:javascript
复制
python3 firebase.py -p 4 -f results_1.json -c 150 --dnsdumpster

生成的JSON结果文件将包含收集到的数据库安全信息以及转储的内容,每个数据库包含一个状态数据,可能的值如下:

代码语言:javascript
复制
-2:未检测到漏洞;

-1:目标数据库不存在;

0:可能可以执行进一步漏洞利用;

1:检测到漏洞;

许可证协议

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

项目地址

firebase:

https://github.com/francesc-h/firebase

https://github.com/PaulSec/API-dnsdumpster.com
http://beautiful-soup-4.readthedocs.io/en/latest/
https://github.com/requests/requests
https://pentest-tools.com/information-gathering/find-subdomains-of-domain