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

ops/2024/11/12 7:11:23/

关于firebase

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

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

工具要求

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

dnsdumpster

bs4

requests

工具安装

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

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

git clone https://github.com/Turr0n/firebase.git

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

cd firebasepip install -r requirements.txt

工具使用

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个并行进程执行任务:

python3 firebase.py -p 4 -f results_1.json -c 150 --dnsdumpster

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

-2:未检测到漏洞;-1:目标数据库不存在;0:可能可以执行进一步漏洞利用;1:检测到漏洞;

许可证协议

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

项目地址

firebase:【GitHub传送门】

参考资料

https://github.com/PaulSec/API-dnsdumpster.com

Beautiful Soup Documentation — Beautiful Soup 4.4.0 documentation

GitHub - psf/requests: A simple, yet elegant, HTTP library.

Free subdomain finder online 🛡️ find subdomains of domain


http://www.ppmy.cn/ops/23882.html

相关文章

《恶意不息》是一款什么样的游戏,苹果电脑怎么玩《恶意不息》恶意不息游戏内怎么存档 mac电脑玩游戏

近日steam游戏商城新上架了一款名叫《恶意不息》的游戏十分火爆,那么《恶意不息》是一款什么样的游戏,苹果电脑怎么玩《恶意不息》?一起来看看吧! 一、《恶意不息》是一款什么样的游戏? Private Division,…

AIGC:开启内容创作新纪元,我们如何看待它的影响与前景?

AIGC的概念 AIGC(Artificial Intelligence Generated Content)的概念主要是指人工智能生成内容。 这是一种新的人工智能技术,它利用人工智能模型,根据给定的主题、关键词、格式、风格等条件,自动生成各种类型的文本、图…

Swift - 枚举

文章目录 Swift - 枚举1. 枚举的基本用法2. 关联值(Associated Values)3. 关联值举例4. 原始值5. 隐式原始值(Implicitly Assigned Raw Values)6. 递归枚举(Recursive Enumeration)7. MemoryLayout Swift -…

分布式与一致性协议之Raft算法(二)

Raft算法 什么是任期 我们知道,议会选举中的领导者是有任期的,当领导者任命到期后,需要重新再次选举。Raft算法中的领导者也是有任期,每个任期由单调递增的数字(任期编号)标识。比如,节点A的任期编号是1。任期编号会…

【JS】节流与防抖技术

JavaScript: 节流与防抖技术 当用户进行滚动、调整窗口大小或进行频繁的键盘输入时,页面上的某些事件处理器可能会被频繁触发。如果每次事件触发都执行函数,可能会对性能产生显著影响。在这种情况下,我们可以利用节流(Throttle&a…

基于Springboot的滑雪场管理系统(有报告)。Javaee项目,springboot项目。

演示视频: 基于Springboot的滑雪场管理系统(有报告)。Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构&a…

Manim - Python 绘画引擎

文章目录 关于 Manim安装manim 有两个版本要求直接使用 pip使用源码安装 使用 manimManual 关于 Manim Manim : Mathematical Animation,是由 Grant Sanderson 开发,是一个用于精确编程动画的引擎,专为创建解释性数学视频而设计。 github :…

navicat连接postgresql报错解决方案

navicat连接postgresql报错解决方案 问题描述原因分析:解决方案:1、将navicat升级到16.2以上版本2、降级pgsql3、修改dll配置文件 问题描述 使用Navicat连接postgresql时,出现如下错误。 原因分析: 由于pgsql 15版本以后&#…