skillfed

bbot

OSINT automation for hackers.

bbot v3.0.1 77.0K downloads/30d#14,560 on PyPI10,362
AGPL license AGPL-3.0 Active released

What it is and what it does

BBOT is a modular security scanner designed for reconnaissance, bug bounties, and attack surface management. It combines passive API sources with active techniques like DNS brute-forcing and web crawling to discover subdomains, email addresses, web vulnerabilities, and other reconnaissance data. The tool accepts multiple target types—domains, IPs, IP ranges, URLs, emails, and more—and can run preset scanning profiles (subdomain-enum, spider, email-enum, web, kitchen-sink) or be customized with individual modules.

As a Python library or CLI tool, BBOT outputs findings to multiple formats including Neo4j, databases, messaging platforms, and standard files. It emphasizes automation and scale: recursive DNS mutations, NLP-powered subdomain generation, web screenshots, and integration with Ansible for dependency management. The active maintenance, large dependency footprint, and AGPL license reflect its role as a comprehensive framework rather than a lightweight utility.

Use it for:

  • Enumerate subdomains of a target domain using passive APIs and recursive DNS brute-force with target-specific mutations.
  • Crawl a website to extract emails, URLs, and other reconnaissance data while respecting session integrity.
  • Scan an entire IP range or multiple targets in parallel to map an organization's attack surface.
  • Integrate reconnaissance into a security workflow via Python API for synchronous or asynchronous event processing.
  • Output scan results directly to Neo4j, Elasticsearch, or messaging platforms for real-time analysis and alerting.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

BBOT is a multipurpose reconnaissance and vulnerability scanner that automates subdomain enumeration, web crawling, email discovery, and security scanning across targets ranging from domains to IP ranges to URLs.

Yes, if you need comprehensive reconnaissance automation for security testing or bug bounties. BBOT is actively maintained, has low install friction, and offers a large module ecosystem. However, verify that AGPL-3.0 licensing aligns with your use case, and be aware that the 36 runtime dependencies add complexity. Not suitable for minimal, lightweight scanning—consider simpler tools if you only need basic subdomain enumeration.

Install

bbot on PyPI

pip

pip install bbot

uv

uv add bbot

poetry

poetry add bbot

Installing bbot

Before you install

Low friction install via pip or pipx. Actively maintained with a recent release (24 days old) and strong community signal (10362 GitHub stars). Requires Python 3.10 or later and brings in 36 runtime dependencies including Ansible, DNS tools, and web frameworks—manageable for a comprehensive security scanner.

License in practice

Licensed under AGPL-3.0, which requires that any modifications or derivative works distributed must also be released under AGPL-3.0. Suitable for internal security work and open-source projects, but commercial use or proprietary modifications require careful licensing review.

Quickstart

pip install bbot

from bbot.scanner import Scanner

scan = Scanner("evilcorp.com", presets=["subdomain-enum"])
for event in scan.start():
    print(event)

Requires Python 3.10 or later. DNS resolver performance depends on unfiltered resolvers in /etc/resolv.conf; adding more resolvers significantly speeds up scans.

Verify before relying

  • Whether the claimed 20-50% subdomain discovery advantage over other tools holds across different domain sizes and configurations.
  • Performance characteristics and resource requirements for large-scale scans (e.g., scanning entire IP ranges or thousands of targets).
  • Compatibility and stability of the 36 runtime dependencies in production environments.

Package facts

License AGPL-3.0 (agpl)
Python support supports the current Python release (<3.15,>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 36 — ansible-core, ansible-runner, asndb, beautifulsoup4, blastdns, blasthttp, cachetools, cloudcheck, deepdiff, dnspython, idna, jinja2, lxml, mmh3, orjson, pip, psutil, puremagic, pycryptodome, pydantic, pyjwt, pyyaml, pyzmq, radixtarget, regex, setproctitle, socksio, tabulate, tldextract, unidecode
Maintenance actively maintained — 24 days since the last release
Last repo commit
First released
Downloads 77,007/month — #14,560 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: bbot-3.0.1-py3-none-any.whl

Keywords: attack-surface, automation, bugbounty, cli, command-line-tool, hacking, intelligence, neo4j, osint, osint-framework, osint-tool, pentesting, python, python-library, recon, recursion, scanner, security-tools, subdomain-enumeration, subdomain-scanner, subdomains, threat-intel

Operating System :: POSIX :: LinuxTopic :: Security

Tags

subdomain enumeration scannerosint reconnaissance automationbug bounty recon toolattack surface mappingweb vulnerability scannerdns brute force toolsecurity scanning framework
osint-frameworkattack-surface-mappingsecurity-automation

More Security packages