PAGES
← all tools
◆ Reconnaissance & OSINT

bbot

v3.0.2 open-source

The recursive internet scanner for hackers.

Summary

bbot is an open-source reconnaissance scanner, released under AGPLv3, that automates subdomain enumeration, web scanning, email gathering, and attack surfaceattack surfaceThe exposed systems, interfaces and access points an attacker could try to use. It includes internet-facing services as well as identities, software and other reachable resources. mapping from the command line, installed via pipx or Docker. Its README describes it as inspired by Spiderfoot, built for recon, bug bounties, and ASMASMAttack Surface Management: the continuous practice of discovering, inventorying, and monitoring an organization's externally exposed assets so that cyber tools can flag unknown or misconfigured entry points before attackers find them. work, which makes it a fit for red teamers, bug bounty hunters, and teams tracking their own external footprint. Scans run through modular presets covering passive and active discovery, with output modules for feeding results into systems like Elasticsearch, Kafka, or MongoDB. It targets by domain or ASNASNAutonomous System Number — a globally unique identifier assigned by regional internet registries to a network operator, letting routing protocols distinguish which organization controls a block of IP addresses. and separates targets from seeds, with a pydantic-validated config catching errors before a scan starts. First committed in 2022, it has 74 contributors, nearly 1,800 commits in the past year, and a release 31 days ago, indicating active development.

The recursive internet scanner for hackers.

How bbot helps

What subdomains exist for this domain that I haven't found yet?

combines passive API lookups with active brute-forcing and reports every subdomain discovered, with the source that found each one

Is anyone leaking API keys or tokens in the JavaScript my site ships?

runs a credential-scanning preset against every HTTP body collected from the target's web surface and tags findings with the source URL

Which of the hosts I own are actually reachable and what's running on them?

crawls from the seeds into the defined scope, resolving and probing each host, and reports live web services and open attack surface rather than just names

What email addresses and data has my organization exposed on the web?

spiders discovered sites and extracts emails and data points into a single report alongside the subdomains and hosts they came from

Did my last scan quietly change what it considers a finding?

unifies findings and vulnerabilities into one event type carrying severity and confidence, so a shift in what gets flagged shows up as a change in those fields rather than a silent gap

Are my valid credentials being accepted somewhere they shouldn't be?

runs a brute-forcing module against exposed services across the target's footprint and reports which credentials succeeded and against which host

all 22 features, with the evidence for each →

Languages

Not documented

Features

22 capabilities across 2 capability groups · 2 backed by code, an API document or a real run

Built from bbot's releases, docs, README and our own runs. “Seen” marks the month we first spotted a release the vendor didn't date. Group names and tags are our labels.

Compare with peers →

  • bbot covers 2 of the 13 network discovery and scanning capabilities we track.

What bbot offers you

  • Command-line interface3
  • CI/CD pipeline integration1
Attack surface inventory 4 features Network discovery and scanning since 2026
Web reconnaissance modules shipped Identifies web technologies, virtual hosts, and WAF indicators across target web infrastructure. 6 releases · 1 other source · first seen Jul 2026

Shared capability: Attack surface inventory

release

docs

  • Multipurpose reconnaissance scanner for automating subdomain enumeration, web scanning, email gathering, and attack surface management.
Shodan Enterprise integration shipped Queries the Shodan Enterprise API to add externally observed host and service data to scan results. 2 releases · first seen Jul 2026

Shared capability: Attack surface inventory

release

Cloud bucket enumeration shipped Enumerate misconfigured object-storage buckets including support for Hetzner providers. 1 release · first seen Jul 2026

Shared capability: Attack surface inventory

release

Cloud storage bucket enumeration shipped Finds misconfigured object-storage buckets across major cloud providers that may expose sensitive data. 1 release · first seen Jul 2026

Shared capability: Attack surface inventory

release

DNS record enumeration 2 features Network discovery and scanning since 2026
DNS engine upgrade shipped Resolve and enumerate DNS records using the new BlastDNS engine with improved filtering. 1 release · first seen Jul 2026

Shared capability: DNS record enumeration

release

DNS resolution and enumeration shipped Resolves and enumerates DNS records for target domains, with caching and filtering to keep results reliable. 1 release · first seen Jul 2026

Shared capability: DNS record enumeration

release

  • New DNS resolution engine (BlastDNS) with bounded LRU caches and noisy PTR flood filtering. v3.0.0 · Jul 2026 · source · release history
Other / not yet classified 16 features Features we have not matched to a capability yet. A suggested match is marked.
Configuration and preset management verified Validates, resets, and regenerates configuration and secrets files with type checking and automatic backups. 5 releases · 3 other sources · first seen Jul 2026

Also counts toward: Command-line interface

release

  • Pydantic-validated config and preset system catches typos and type errors before a scan starts. v3.0.0 · Jul 2026 · source · release history
  • Adds pydantic validation of config values and presets before a scan starts v3.0.0 · Jul 2026 · source · release history
  • Module options are now pydantic-validated; the legacy options dict hard-fails. v3.0.0 · Jul 2026 · source · release history
  • New --reset-config / --reset-secrets flags to regenerate stale config files. v3.0.0 · Jul 2026 · source · release history
  • Module options are now pydantic-validated; the legacy per-module options dict hard-fails on upgrade. v3.0.0 · Jul 2026 · source · release history

command line

  • --reset-config — Regenerate bbot.yml from current defaults (overwrites; backs up to .bak) v3.0.0.6rc · Jul 2026 · command-line history
  • --reset-secrets — Regenerate secrets.yml from current defaults (overwrites; backs up to .bak) v3.0.0.6rc · Jul 2026 · command-line history

example

  • Regenerate a stale BBOT config file after upgrading to 3.0 to pick up new default keys. bbot --reset-config v3.0.0 · Jul 2026 · source
HTTP engine shipped Handles all outbound web traffic through a built-in, rate-limited HTTP engine without spawning external processes. 3 releases · 3 other sources · first seen Jul 2026

release

  • Adds decode-error tag to HTTP_RESPONSE events when a response body cannot be decoded, preventing undecoded content from being treated as valid body data. v3.0.2 · Aug 2026 · source · release history
  • New in-process, rate-limited HTTP engine (blasthttp) replaces the external httpx subprocess for all web traffic. v3.0.0 · Jul 2026 · source · release history
  • Adds honoring of 429 Too Many Requests responses for rate limiting v3.0.0 · Jul 2026 · source · release history

docs

  • Multipurpose reconnaissance scanner for automating subdomain enumeration, web scanning, email gathering, and attack surface management.

example

  • Find subdomains using passive APIs and brute-force bbot -t evilcorp.com -p subdomain-enum
  • Passive-only subdomain enumeration bbot -t evilcorp.com -p subdomain-enum -rf passive
Scan scope and targeting shipped suggested Lets operators define scan scope and seed targets separately, including ASNs as first-class target types. 4 releases · 2 other sources · first seen Jul 2026

Suggested capability: Active network scanning. This is our guess, not confirmed.

Also counts toward: Command-line interface

release

  • Scope reworked: -t/--targets defines scope and -s/--seeds drives the scan; ASNs now usable as scan targets. v3.0.0 · Jul 2026 · source · release history
  • Reworks scope with -t/--targets for scope definition and -s/--seeds for starting events, retiring --whitelist v3.0.0 · Jul 2026 · source · release history
  • --whitelist was retired: -t/--targets now defines scope, and -s/--seeds drives the scan. v3.0.0 · Jul 2026 · source · release history
  • --whitelist was removed; use -t/--targets to define scope. v3.0.0 · Jul 2026 · source · release history

example

  • Run a scan with explicit targets and seeds, ignoring whitelist logic from previous versions bbot -t target.com -s seed_domain.com --no-color v3.0.0 · Jul 2026 · source
  • Run all scan types simultaneously bbot -t evilcorp.com -p kitchen-sink
Findings and vulnerability reporting shipped Collects and deduplicates vulnerability findings into a single event type with severity and confidence levels shown in the scan status line. 3 releases · 2 other sources · first seen Jul 2026

release

  • Adds new js-audit preset (bbot/presets/web/js-audit.yml) to enable JavaScript auditing workflows v3.0.2 · Aug 2026 · source · release history
  • Findings de-duplicated in output and a severity breakdown shown in the status line. v3.0.0 · Jul 2026 · source · release history
  • Findings and Vulnerabilities unified into a single event type carrying Severity and Confidence. v3.0.0 · Jul 2026 · source · release history

example

  • Audit JavaScript files for secrets (e.g. API keys, tokens) across a target's web surface using the new js-audit preset. bbot -t www.evilcorp.com -p js-audit v3.0.2 · Aug 2026 · source
  • Crawl site extracting emails and data bbot -t evilcorp.com -p spider
Active web fuzzing and injection testing shipped Tests web applications for vulnerabilities such as SSRF and ESI injection, filtering WAF noise to reduce false positives. 4 releases · 1 other source · first seen Jul 2026

release

  • Lightfuzz overhaul adds SSRF and ESI submodules with a default WAF filter and reduced false positives. v3.0.0 · Jul 2026 · source · release history
  • Adds Lightfuzz SSRF and ESI submodules with reduced false positives v3.0.0 · Jul 2026 · source · release history
  • HTTP wildcard/catch-all host detection cuts false positives on catch-all servers. v3.0.0 · Jul 2026 · source · release history
  • Adds HTTP wildcard/catch-all host detection to reduce false positives v3.0.0 · Jul 2026 · source · release history

example

  • Run aggressive web scan against target bbot -t www.evilcorp.com -p web-heavy
Output and display control verified Controls terminal output appearance and lets operators exclude specific output modules or suppress colour and proxy traffic selectively. 1 release · 3 other sources · first seen Jul 2026

release

command line

  • --exclude-output-modules — Exclude output module(s) v3.0.0.6rc · Jul 2026 · command-line history
  • --no-color — Disable colored terminal output v3.0.0.6rc · Jul 2026 · command-line history
  • --no-proxy — Exclude these hosts from proxy (e.g. localhost *.internal.corp 10.0.0.0/8) v3.0.0.6rc · Jul 2026 · command-line history
CI/CD and DevOps misconfiguration scanning shipped Detects misconfigurations in developer and CI/CD platforms including GitHub, GitLab, Jenkins, and Azure DevOps. 2 releases · 1 other source · first seen Jul 2026

release

  • New js-audit preset at bbot/presets/web/js-audit.yml runs trufflehog against HTTP bodies (streamed via stdin), includes the source URL on findings, and sets _module_threads to 2. v3.0.2 · Aug 2026 · source · release history
  • New trajan module for misconfiguration scanning across GitHub, GitLab, Azure DevOps, Jenkins, and JFrog. v3.0.0 · Jul 2026 · source · release history

example

  • Crawl site extracting emails and data bbot -t evilcorp.com -p spider
JavaScript auditing preset shipped Audit JavaScript files for secrets and vulnerable libraries using a dedicated preset workflow. 2 releases · first seen Aug 2026

release

  • Adds new js-audit preset (bbot/presets/web/js-audit.yml) to enable JavaScript auditing workflows v3.0.2 · Aug 2026 · source · release history
  • New js-audit preset at bbot/presets/web/js-audit.yml runs trufflehog against HTTP bodies (streamed via stdin), includes the source URL on findings, and sets _module_threads to 2. v3.0.2 · Aug 2026 · source · release history
CI/CD and DevOps scanning shipped Detect misconfigurations across developer platforms including GitHub, GitLab, Azure DevOps, Jenkins, and JFrog using the trajan module. 1 release · 1 other source · first seen Jul 2026

Also counts toward: CI/CD pipeline integration

release

  • Adds new trajan module to scan GitHub, GitLab, Azure DevOps, Jenkins, and JFrog for misconfigurations v3.0.0 · Jul 2026 · source · release history

example

  • Use the new trajan module to scan for misconfigurations across multiple platforms bbot -t target.com -m trajan v3.0.0 · Jul 2026 · source
Configuration reset flags shipped Regenerate stale configuration files and secrets using dedicated command-line flags. 1 release · 1 other source · first seen Jul 2026

Also counts toward: Command-line interface

release

  • Adds --reset-config and --reset-secrets flags to regenerate stale configuration files v3.0.0 · Jul 2026 · source · release history

example

  • Regenerate stale configuration files using the new reset flags bbot --reset-config v3.0.0 · Jul 2026 · source
Credential brute-forcing shipped Attempts credential brute-forcing against a wide range of network services. 2 releases · first seen Jul 2026

release

  • Adds new legba module for credential brute-forcing across many services v3.0.0 · Jul 2026 · source · release history
  • New legba module for credential brute-forcing across many services. v3.0.0 · Jul 2026 · source · release history
Output module integrations shipped Sends scan results to external systems including MongoDB, Elasticsearch, Kafka, RabbitMQ, ZeroMQ, and NATS as events arrive. 2 releases · first seen Jul 2026

release

  • New output modules: MongoDB, Elasticsearch, Kafka, RabbitMQ, ZeroMQ, and NATS. v3.0.0 · Jul 2026 · source · release history
  • Output modules are now additive; new exclude_output_modules option lets you opt individual modules out. v3.0.0 · Jul 2026 · source · release history
Process pool tuning shipped Increase the max tasks per child in process pools to enable more sustained parallel workloads. 1 release · first seen Aug 2026

release

  • Raises process pool max_tasks_per_child from 25 to 250, enabling more sustained parallel workloads before worker recycling. v3.0.2 · Aug 2026 · source · release history
ASN enrichment shipped Enrich scan targets with ASN data via the asndb integration. 1 release · first seen Jul 2026

release

New output modules shipped Stream scan results to external systems including MongoDB, Elasticsearch, Kafka, RabbitMQ, ZeroMQ, and NATS. 1 release · first seen Jul 2026

release

  • Packs new output modules: MongoDB, Elastic, Kafka, RabbitMQ, ZeroMQ, NATS v3.0.0 · Jul 2026 · source · release history
Unified findings reporting shipped Report deduplicated findings and vulnerabilities as a unified event type with severity and confidence levels. 1 release · first seen Jul 2026

release

  • Unifies Findings and Vulnerabilities into a single event type carrying Severity and Confidence attributes v3.0.0 · Jul 2026 · source · release history

Lines in monospace are the tool's own words: help text parsed from its source, or an endpoint from its API document. Under release, a line is our summary of a dated release. Under docs, it is quoted from the tool's own documentation or website. Each links back to the source it came from.

Score card

  1. Shipping velocity releases a month, last 12 months
  2. Documentation quality release-notes rubric, 0–100
  3. Breaking-change discipline how rarely a release breaks users, and notice given
  4. Maintenance risk quiet time against its own cadence, maintainers
  5. Innovation & surface new capabilities, API and MCP surface
  6. Community health
  7. Contributor trend distinct committers, this year against last
  8. Maintainer concentration bus factor now against a year ago
  9. Issue backlog trend issues closed per issue opened, 12 months
  10. Responsiveness median time to a maintainer’s first reply

Nine scores for bbot, each built from the releases, notes and API history this site tracks — and, on Researcher and Business, where it stands among every measured tool in its category and how that has moved.

Score cards are part of every paid plan.

See plans →

Each score is 0–100 on a published rubric, derived from data this site already shows. A dimension we cannot measure says so — it is never scored 0 and never enters a rank.

How this is scored
  • Shipping velocity — releases a month over the last 12 months, on a log scale where 16 a month scores 100. Needs 3 releases in the window.
  • Documentation quality — the release-notes rubric published on the analytics page, unchanged.
  • Breaking-change discipline — the share of releases carrying a breaking change (none scores 100, half or more scores 0). Only projects that label breaking changes are measured: a clean record cannot be told from an unlabelled one.
  • Maintenance risk — quiet time measured against the tool's own release cadence (quiet longer than 90 days and three typical gaps scores 0), plus the number of active maintainers and whether contributors are growing, where known. Higher is lower risk.
  • Innovation & surface — new capabilities in the feature ledger this year, API and MCP operations added, and the share of commits that are features: the mean of whichever we hold.
  • Community health (open-source tools only) — each is a direction, not a size: contributors this year against last, the bus factor now against a year ago, and issues closed per issue opened, where steady scores 50, doubled 100 and halved 0; plus the median time to a maintainer's first reply (an hour scores about 100, a month or more 0). A commercial card has no repository and carries none of the four.
  • Documented delivery (commercial tools) — when a vendor's documented new capabilities have slowed against its own baseline, that counts against the overall standing as heavily as two low dimensions. Steady delivery, or too little history to judge, leaves the standing alone; it is never a sixth score.
  • Open-source tools are scored on repository signals; commercial tools on their published changelog. Ranks compare tools within one category and one profile and need at least five measured peers; the overall standing needs three ranked dimensions. Best-in-breed or consolidator is a shape, not a quality, and is never scored.

Release-note detail over time

See how much detail bbot puts in its release notes, quarter by quarter, and compare it with tracked tools in the same category. This history uses up to ten retained, reviewed notes per tool; sparse or blank older quarters may reflect that limit.

Checking release-note history…

Explore the full chart →

Releases

Show

9 entries

  1. August 20262
  2. July 20262
  3. June 20262
  4. October 20253
    Show

    9 entries

    Project health

    Issue, contributor and maintainer activity in blacklanternsecurity/bbot, 2023-10 – 2026-09, as of 2026-09-25. Twelve-month figures first; the trend lines run the whole window.

    1. Contributors 23 −2 vs prior 12 months
    2. Maintainers 2 +1 joined · −2 left, last 12 months
    3. Bus factor 1 committers behind half the commits
    4. Community-filed 48% of issues opened, last 12 months
    5. Median time to close 367 days first maintainer reply 3 days
    6. Open backlog 20 of 1,118 issues ever filed
    1. Issues opened / month 0 · 1 communitymaintainers
    2. Open backlog 20
    3. Contributors / month 0
    4. Commits / month 0
    5. Stars 10,602
    Issue themes, last 12 months
    • bugs 52%
    • features 26%
    • docs 1%
    • other 21%

    Counts from the project's public repository and git history; no individuals are identified. Maintainers are the committers covering 80% of the last year's commits. how we measure this

    Add the badge to your README

    Maintain this project? The badge links readers straight to this page, so they can follow every release here.

    Tracked by Cyber Toolchain Choose a badge style and copy the code →
    browse all tools → score card for your toolchain →