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

embedded/2024/9/22 17:13:02/

关于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/embedded/32111.html

相关文章

五一后返工,3招帮你快速找回状态!

五一假期即将结束,如何快速进入工作状态 随着五一假期的临近结束,我们即将迎来新的工作挑战。在享受了短暂的休息和放松之后,重新调整心态,迅速进入工作状态显得尤为重要。本文将为您提供一些实用的方法和建议,帮助您…

Django之配置数据库

一,创建项目 二,将项目的setting.py中的 DATABASES {default: {ENGINE: django.db.backends.sqlite3,NAME: BASE_DIR / db.sqlite3,} }替换成如下(以mysql为例) DATABASES {default: {ENGINE: django.db.backends.mysql,NAME: …

Spring Data Redis简单使用

Spring Data Redis是一个用于简化应用程序与Redis交互的开发框架。它提供了简单的配置和方便的操作API,使得与Redis的集成变得更加容易。下面是一个快速入门使用Spring Data Redis的步骤: 步骤 1:添加依赖 在您的项目中添加Spring Data Redi…

初识C++ · 类和对象(下)

目录 1 再谈构造函数 2 类中的隐式类型转换 3 Static成员 4 友元和内部类 5 匿名对象 6 编译器的一些优化 1 再谈构造函数 先看一段代码: class Date { public :Date(int year, int month, int day){_year year;_month month;_day day;} private:int _ye…

高并发解决方案:Sentinel的流量控制、熔断与OpenFeign整合实战

🚀 作者 :“二当家-小D” 🚀 博主简介:⭐前荔枝FM架构师、阿里资深工程师||曾任职于阿里巴巴担任多个项目负责人,8年开发架构经验,精通java,擅长分布式高并发架构,自动化压力测试,微服务容器化k…

LLM应用:工作流workflow创建自定义模版使用

参考: https://www.coze.cn/ 本案例是在coze平台上操作的,也有其他工具支持工作流的创建例如dify;也例如图像生成的comfyui工作流工具 创建自定义模版 可以根据自己需求创建自己的工作流工具;本文案例是创建一个联网搜索的LLM应用: 创建工作流页面: https://www.coze.c…

Visual studio调试技巧

Visual studio调试技巧 bug是什么?Debug和ReleaseDebugRelease 如何调试VS调试快捷键调试过程中查看程序信息查看临时变量的值查看内存信息查看调用堆栈查看汇编信息查看寄存器信息 编译常见错误编译型错误链接型错误运行时错误 bug是什么? bug的英文释…

JSON转CSV:使用Java处理复杂数据结构

引言 在数据处理和分析的世界中,经常需要将数据从一种格式转换为另一种更便于处理或分析的格式。本文将详细介绍如何使用Java语言,配合Jackson和Apache Commons CSV库,将嵌套的JSON数据转换成CSV格式。这种技能在数据科学、软件开发和系统集…