@tom_doerr: 执行递归互联网扫描以自动化漏洞赏金侦查和攻击面管理。 https://github.co…
摘要
BBOT 是一款开源多功能扫描器,旨在通过递归扫描能力自动化互联网侦查、漏洞赏金任务和攻击面管理。
查看缓存全文
缓存时间: 2026/08/17 06:10
通过执行递归互联网扫描,自动化漏洞赏金侦察与攻击面管理。https://t.co/R0R6PsE1fQ https://t.co/nuHiZ7lltd
blacklanternsecurity/bbot
来源:https://github.com/blacklanternsecurity/bbot
BEE·bot 是一款受 Spiderfoot (https://github.com/smicallef/spiderfoot) 启发的多用途扫描器,专为自动化您的侦察、漏洞赏金和攻击面管理而构建!
BBOT 实时扫描演示 - 使用 VivaGraphJS (https://github.com/blacklanternsecurity/bbot-vivagraphjs) 进行可视化
安装
# 稳定版本
pipx install bbot
# 开发版(前沿版本)
pipx install --pip-args '\--pre' bbot
更多安装方式,包括 Docker (https://hub.docker.com/r/blacklanternsecurity/bbot),请参阅《入门指南》(https://www.blacklanternsecurity.com/bbot/Stable/)
从 2.x 升级? BBOT 3.0 在 CLI、预设、模块、事件和 Python API 方面包含重大变更。升级前请查阅《2.x → 3.0 迁移指南》(https://www.blacklanternsecurity.com/bbot/Stable/migration/3.0_breaking_changes/)(源文件)。
加速提示: BBOT 的 DNS 解析器 (blastdns (https://github.com/blacklanternsecurity/blastdns)) 会在
/etc/resolv.conf中为每个解析器启动多个线程。添加更多未过滤的解析器能显著提升扫描速度。详情请参阅示例 resolv.conf 和《技巧与窍门》(https://www.blacklanternsecurity.com/bbot/Stable/scanning/tips_and_tricks/#speed-up-scans-with-more-dns-resolvers)。
示例命令
1) 子域名发现器
结合被动 API 源与针对目标特定域名变体的递归 DNS 暴力破解。
# 发现 evilcorp.com 的子域名
bbot -t evilcorp.com -p subdomain-enum
# 仅使用被动源
bbot -t evilcorp.com -p subdomain-enum -rf passive
subdomain-enum.yml
description: 通过 API 枚举子域名,暴力破解
flags:
- subdomain-enum
output_modules:
- subdomains
config:
dns:
threads: 25
brute_threads: 1000
# 在此填入您的 API 密钥
# modules:
# github:
# api_key: ""
# chaos:
# api_key: ""
# securitytrails:
# api_key: ""
BBOT 通常比其他工具多发现 20-50% 的子域名。域名越大,差距越明显。欲知其原理,请参阅《工作原理》(https://www.blacklanternsecurity.com/bbot/Stable/how_it_works/)。
2) 网络爬虫
# 爬取 evilcorp.com,提取电子邮件及其他信息
bbot -t evilcorp.com -p spider
spider.yml
description: 递归网络爬虫
modules:
- http
blacklist:
# 防止爬虫因触发登出而使会话失效
- "RE:/.*(sign|log)[_-]?out"
config:
web:
# 连续跟踪的链接数量
spider_distance: 2
# 不跟踪目录深度超过 4 的链接
spider_depth: 4
# 每页最多跟踪的链接数
spider_links_per_page: 25
3) 电子邮件收集器
# 使用免费 API + 抓取进行快速电子邮件枚举
bbot -t evilcorp.com -p email-enum
# 结合子域名枚举 + 网络爬虫以获得最大产出
bbot -t evilcorp.com -p email-enum subdomain-enum spider
email-enum.yml
description: 从 API、网络抓取等途径枚举电子邮件地址
flags:
- email-enum
output_modules:
- emails
4) 网络扫描器
# 对 www.evilcorp.com 进行轻量级网络扫描
bbot -t www.evilcorp.com -p web
# 对 www.evilcorp.com 进行深度网络扫描
bbot -t www.evilcorp.com -p web-heavy
web.yml
description: 快速网络扫描
include:
- iis-shortnames
flags:
- web
web-heavy.yml
description: 深度网络扫描
include:
# 包含 web 预设
- web
flags:
- web-heavy
5) 全能模式(一切尽在掌控)
# 全能模式
bbot -t evilcorp.com -p kitchen-sink
# 大致等同于:
bbot -t evilcorp.com -p subdomain-enum cloud-enum code-enum email-enum spider web paramminer webbrute web-screenshots
kitchen-sink.yml
description: 全能模式
include:
- subdomain-enum
- cloud-enum
- code-enum
- email-enum
- spider
- web
- paramminer
- webbrute
- web-screenshots
- baddns-heavy
config:
modules:
dnsbrute:
recursive_mutations: true
dnscommonsrv:
recursive_mutations: true
webbrute:
avoid_wafs: false
wayback:
urls: true
parameters: true
archive: true
工作原理
点击下方图表探索 BBOT 的内部工作原理 (https://www.blacklanternsecurity.com/bbot/Stable/how_it_works/)。
输出模块
BBOT 作为 Python 库
同步方式
from bbot.scanner import Scanner
if __name__ == "__main__":
scan = Scanner("evilcorp.com", presets=["subdomain-enum"])
for event in scan.start():
print(event)
异步方式
from bbot.scanner import Scanner
async def main():
scan = Scanner("evilcorp.com", presets=["subdomain-enum"])
async for event in scan.async_start():
print(event.json())
if __name__ == "__main__":
import asyncio
asyncio.run(main())
参见:这个邪恶的 Discord 机器人
一个响应 /scan 命令的 BBOT Discord 机器人 (https://www.blacklanternsecurity.com/bbot/Stable/dev/#discord-bot-example)。从 Discord 服务器中舒适地扫描互联网!
功能概览
- 支持多目标
- 网页截图
- 一系列攻击性 Web 模块
- 基于自然语言处理的子域名变体
- 原生输出到 Neo4j(及更多)
- 使用 Ansible 自动安装依赖
- 使用自定义 YARA 规则搜索整个攻击面
- Python API + 开发者文档
目标
BBOT 通过 -t 参数接受无限数量的目标。您可以直接在命令行指定目标,或通过文件指定(或两者兼用):
bbot -t evilcorp.com evilcorp.org 1.2.3.0/24 -p subdomain-enum
目标可以是以下任意一种:
- DNS 名称 (
evilcorp.com) - IP 地址 (
1.2.3.4) - IP 范围 (
1.2.3.0/24) - 开放的 TCP 端口 (
192.168.0.1:80) - URL (
https://www.evilcorp.com) - 电子邮件地址 (
[email protected]) - 组织 (
ORG:evilcorp) - 用户名 (
USER:bobsmith) - 文件系统 (
FILESYSTEM:/tmp/asdf) - 移动应用 (
MOBILE_APP:https://play.google.com/store/apps/details?id=com.evilcorp.app)
更多信息,请参阅《目标》(https://www.blacklanternsecurity.com/bbot/Stable/scanning/#targets-t)。
要了解 BBOT 如何处理范围,请参阅《范围》(https://www.blacklanternsecurity.com/bbot/Stable/scanning/#scope)。
API 密钥
类似于 Amass 或 Subfinder,BBOT 支持多种第三方服务的 API 密钥,例如 SecurityTrails 等。标准做法是在 ~/.config/bbot/secrets.yml 中输入您的 API 密钥。注意允许多个 API 密钥:
modules:
shodan_dns:
api_key: 4f41243847da693a4f356c0486114bc6
c99: # 多个 API 密钥
api_key:
- 21a270d5f59c9b05813a72bb41707266
- ea8f243d9885cf8ce9876a580224fd3c
- 5bc6ed268ab6488270e496d3183a1a27
virustotal:
api_key: dd5f0eee2e4a99b71a939bded450b246
securitytrails:
api_key: d9a05c3fd9a514497713c54b4455d0b0
如果您愿意,也可以在命令行指定:
bbot -c modules.virustotal.api_key=dd5f0eee2e4a99b71a939bded450b246
详情请参阅《配置》(https://www.blacklanternsecurity.com/bbot/Stable/scanning/configuration/)。
模块、标志等完整列表
文档
- 用户手册
- 开发者手册
- 代码参考
- 辅助工具
贡献
一些最优秀的 BBOT 模块是由社区编写的。BBOT 正在不断改进;它的功能日益强大!我们欢迎贡献。不仅仅是代码,还有创意!如果您有关于新功能的构想,请在《讨论》(https://github.com/blacklanternsecurity/bbot/discussions)中告知我们。
如果您想亲自动手,请参阅《贡献指南》(https://www.blacklanternsecurity.com/bbot/Stable/contribution/)。您可以在那里找到设置说明以及如何编写 BBOT 模块的简易教程。我们还有详尽的《开发者文档》(https://www.blacklanternsecurity.com/bbot/Stable/dev/)。
感谢这些杰出的人为 BBOT 做出贡献!:heart:
特别感谢:
- @TheTechromancer 创建了 BBOT
- @liquidsec 在 BBOT 的网络黑客功能方面所做的广泛工作,包括 badsecrets (https://github.com/blacklanternsecurity/badsecrets) 和 baddns (https://github.com/blacklanternsecurity/baddns)
- Steve Micallef (@smicallef) 创建了 Spiderfoot
- @kerrymilan 在 Neo4j 和 Ansible 方面的专业知识
- @domwhewell-sage 及其一系列强大的代码搜集模块
- @aconite33 和 @amiremami 毫不留情的测试
- Aleksei Kornev (@alekseiko) 将 bbot Pypi 仓库的所有权授予我们 <3
相似文章
@tom_doerr:开源长周期深度研究智能体 https://github.com/TIGER-AI-Lab/OpenResearcher…
TIGER-AI-Lab 发布 OpenResearcher,一款用于自动化长周期深度研究任务的开源智能体。
@tom_doerr: 本地分析超过4000万行代码库 https://github.com/giancarloerra/SocratiCode…
SocratiCode 是一个开源代码库上下文引擎,允许AI在本地分析和理解大型代码库(超过4000万行),无需配置,完全保护隐私。
@tom_doerr: 构建私有公司知识库 https://github.com/agno-agi/scout
Scout是一个开源的企业情报智能体,能够实时浏览网络、Slack、Drive和CRM等数据源,构建包含维基和CRM的私有公司知识库。
@tom_doerr:为 homelab 爱好者精选顶级开源应用。 https://github.com/ccbikai/awesome-homelab…
Tom Doerr 分享了 awesome-homelab 精选列表,其中包含面向 homelab 爱好者的顶级开源应用,涵盖 Ollama、Dify、Open WebUI 等 AI 工具。
@tom_doerr: 通过状态空间搜索进行渗透测试的自主AI代理 https://github.com/oritera/Cairn
Cairn是一个开源的通用问题解决引擎,利用状态空间搜索进行自主AI渗透测试,基于黑板架构和事实-意图图构建。