BBOT es un marco OSINT modular y recursivo que puede ejecutar todo el flujo de trabajo OSINT con un solo comando.
BBOT se inspira en Spiderfoot, pero lo lleva al siguiente nivel con características como escaneos multiobjetivo, rendimiento asyncio ultrarrápido y mutaciones de subdominios basadas en NLP. Ofrece una amplia gama de funcionalidades, incluyendo enumeración de subdominios, escaneo de puertos, capturas de pantalla web, escaneo de vulnerabilidades y mucho más.
![Comparación de BBOT con otras herramientas](https://esgeeks.com/wp-content/uploads/2023/08/Comparacion-BBOT-otras-herramientas.png)
BBOT suele superar a otras herramientas de enumeración de subdominios en un 20-25%. Para saber cómo es posible, consulta Cómo funciona.
![](https://user-images.githubusercontent.com/20261699/224358855-9411cdc6-68a9-4cc4-828f-e30e4766101a.gif)
Instalación (pip)
Para conocer más métodos de instalación, incluido Docker, consulta Instalación.
# Prerequisites:
# - Linux (Windows and macOS are *not* supported)
# - Python 3.9 or newer
# stable version
pipx install bbot
# bleeding edge (dev branch)
pipx install --pip-args '\--pre' bbot
bbot --help
Ejemplos de Comandos
La salida del escaneo, los registros, etc. se guardan en ~/.bbot. Para obtener ejemplos y explicaciones más detalladas, consulta Escaneo.
Subdominios:
# Perform a full subdomain enumeration on evilcorp.com
bbot -t evilcorp.com -f subdomain-enum
Subdominios (sólo pasivos):
# Perform a passive-only subdomain enumeration on evilcorp.com
bbot -t evilcorp.com -f subdomain-enum -rf passive
Subdominios + escaneo de puertos + capturas de pantalla web:
# Port-scan every subdomain, screenshot every webpage, output to current directory
bbot -t evilcorp.com -f subdomain-enum -m nmap gowitness -n my_scan -o .
Subdominios + exploración web básica:
# A basic web scan includes wappalyzer, robots.txt, and other non-intrusive web modules
bbot -t evilcorp.com -f subdomain-enum web-basic
Araña web:
# Crawl www.evilcorp.com up to a max depth of 2, automatically extracting emails, secrets, etc.
bbot -t www.evilcorp.com -m httpx robots badsecrets secretsdb -c web_spider_distance=2 web_spider_depth=2
Todo en todas partes a la vez:
# Subdomains, emails, cloud buckets, port scan, basic web, web screenshots, nuclei
bbot -t evilcorp.com -f subdomain-enum email-enum cloud-enum web-basic -m nmap gowitness nuclei --allow-deadly
Objetivos
BBOT acepta un número ilimitado de objetivos. Puedes especificar objetivos directamente en la línea de comandos o en archivos (¡o en ambos!). Los objetivos pueden ser cualquiera de los siguientes:
DNS_NAME (evilcorp.com)
IP_ADDRESS (1.2.3.4)
IP_RANGE (1.2.3.0/24)
OPEN_TCP_PORT (192.168.0.1:80)
URL (https://www.evilcorp.com)
BBOT como biblioteca de Python
Sincrónico
from bbot.scanner import Scanner
# any number of targets can be specified
scan = Scanner("example.com", "scanme.nmap.org", modules=["nmap", "sslcert"])
for event in scan.start():
print(event.json())
Asíncrono
from bbot.scanner import Scanner
async def main():
scan = Scanner("example.com", "scanme.nmap.org", modules=["nmap", "sslcert"])
async for event in scan.async_start():
print(event.json())
import asyncio
asyncio.run(main())
https://github.com/blacklanternsecurity/bbot