[![bbot_banner](https://github.com/user-attachments/assets/f02804ce-9478-4f1e-ac4d-9cf5620a3214)](https://github.com/blacklanternsecurity/bbot)
[![Python Version](https://img.shields.io/badge/python-3.9+-FF8400)](https://www.python.org) [![License](https://img.shields.io/badge/license-GPLv3-FF8400.svg)](https://github.com/blacklanternsecurity/bbot/blob/dev/LICENSE) [![DEF CON Recon Village 2024](https://img.shields.io/badge/DEF%20CON%20Demo%20Labs-2023-FF8400.svg)](https://www.reconvillage.org/talks) [![PyPi Downloads](https://static.pepy.tech/personalized-badge/bbot?right_color=orange&left_color=grey)](https://pepy.tech/project/bbot) [![Black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) [![Tests](https://github.com/blacklanternsecurity/bbot/actions/workflows/tests.yml/badge.svg?branch=stable)](https://github.com/blacklanternsecurity/bbot/actions?query=workflow%3A"tests") [![Codecov](https://codecov.io/gh/blacklanternsecurity/bbot/branch/dev/graph/badge.svg?token=IR5AZBDM5K)](https://codecov.io/gh/blacklanternsecurity/bbot) [![Discord](https://img.shields.io/discord/859164869970362439)](https://discord.com/invite/PZqkgxu5SA)
### **BEEĀ·bot** is a multipurpose scanner inspired by [Spiderfoot](https://github.com/smicallef/spiderfoot), built to automate your **Recon**, **Bug Bounties**, and **ASM**!
https://github.com/blacklanternsecurity/bbot/assets/20261699/e539e89b-92ea-46fa-b893-9cde94eebf81
_A BBOT scan in real-time - visualization with [VivaGraphJS](https://github.com/blacklanternsecurity/bbot-vivagraphjs)_
## Installation
```bash
# stable version
pipx install bbot
# bleeding edge (dev branch)
pipx install --pip-args '\--pre' bbot
```
_For more installation methods, including [Docker](https://hub.docker.com/r/blacklanternsecurity/bbot), see [Getting Started](https://www.blacklanternsecurity.com/bbot/Stable/)_
## Example Commands
### 1) Subdomain Finder
Passive API sources plus a recursive DNS brute-force with target-specific subdomain mutations.
```bash
# find subdomains of evilcorp.com
bbot -t evilcorp.com -p subdomain-enum
# passive sources only
bbot -t evilcorp.com -p subdomain-enum -rf passive
```
<!-- BBOT SUBDOMAIN-ENUM PRESET EXPANDABLE -->
<details>
<summary><b><code>subdomain-enum.yml</code></b></summary>
```yaml
description: Enumerate subdomains via APIs, brute-force
flags:
# enable every module with the subdomain-enum flag
- subdomain-enum
output_modules:
# output unique subdomains to TXT file
- subdomains
config:
dns:
threads: 25
brute_threads: 1000
# put your API keys here
# modules:
# github:
# api_key: ""
# chaos:
# api_key: ""
# securitytrails:
# api_key: ""
```
</details>
<!-- END BBOT SUBDOMAIN-ENUM PRESET EXPANDABLE -->
BBOT consistently finds 20-50% more subdomains than other tools. The bigger the domain, the bigger the difference. To learn how this is possible, see [How It Works](https://www.blacklanternsecurity.com/bbot/Dev/how_it_works/).
![subdomain-stats-ebay](https://github.com/blacklanternsecurity/bbot/assets/20261699/de3e7f21-6f52-4ac4-8eab-367296cd385f)
### 2) Web Spider
```bash
# crawl evilcorp.com, extracting emails and other goodies
bbot -t evilcorp.com -p spider
```
<!-- BBOT SPIDER PRESET EXPANDABLE -->
<details>
<summary><b><code>spider.yml</code></b></summary>
```yaml
description: Recursive web spider
modules:
- httpx
config:
web:
# how many links to follow in a row
spider_distance: 2
# don't follow links whose directory depth is higher than 4
spider_depth: 4
# maximum number of links to follow per page
spider_links_per_page: 25
```
</details>
<!-- END BBOT SPIDER PRESET EXPANDABLE -->
### 3) Email Gatherer
```bash
# quick email enum with free APIs + scraping
bbot -t evilcorp.com -p email-enum
# pair with subdomain enum + web spider for maximum yield
bbot -t evilcorp.com -p email-enum subdomain-enum spider
```
<!-- BBOT EMAIL-ENUM PRESET EXPANDABLE -->
<details>
<summary><b><code>email-enum.yml</code></b></summary>
```yaml
description: Enumerate email addresses from APIs, web crawling, etc.
flags:
- email-enum
output_modules:
- emails
```
</details>
<!-- END BBOT EMAIL-ENUM PRESET EXPANDABLE -->
### 4) Web Scanner
```bash
# run a light web scan against www.evilcorp.com
bbot -t www.evilcorp.com -p web-basic
# run a heavy web scan against www.evilcorp.com
bbot -t www.evilcorp.com -p web-thorough
```
<!-- BBOT WEB-BASIC PRESET EXPANDABLE -->
<details>
<summary><b><code>web-basic.yml</code></b></summary>
```yaml
description: Quick web scan
include:
- iis-shortnames
flags:
- web-basic
```
</details>
<!-- END BBOT WEB-BASIC PRESET EXPANDABLE -->
<!-- BBOT WEB-THOROUGH PRESET EXPANDABLE -->
<details>
<summary><b><code>web-thorough.yml</code></b></summary>
```yaml
description: Aggressive web scan
include:
# include the web-basic preset
- web-basic
flags:
- web-thorough
```
</details>
<!-- END BBOT WEB-THOROUGH PRESET EXPANDABLE -->
### 5) Everything Everywhere All at Once
```bash
# everything everywhere all at once
bbot -t evilcorp.com -p kitchen-sink
# roughly equivalent to:
bbot -t evilcorp.com -p subdomain-enum cloud-enum code-enum email-enum spider web-basic paramminer dirbust-light web-screenshots
```
<!-- BBOT KITCHEN-SINK PRESET EXPANDABLE -->
<details>
<summary><b><code>kitchen-sink.yml</code></b></summary>
```yaml
description: Everything everywhere all at once
include:
- subdomain-enum
- cloud-enum
- code-enum
- email-enum
- spider
- web-basic
- paramminer
- dirbust-light
- web-screenshots
- baddns-thorough
config:
modules:
baddns:
enable_references: True
```
</details>
<!-- END BBOT KITCHEN-SINK PRESET EXPANDABLE -->
## How it Works
Click the graph below to explore the [inner workings](https://www.blacklanternsecurity.com/bbot/Stable/how_it_works/) of BBOT.
[![image](https://github.com/blacklanternsecurity/bbot/assets/20261699/e55ba6bd-6d97-48a6-96f0-e122acc23513)](https://www.blacklanternsecurity.com/bbot/Stable/how_it_works/)
## BBOT as a Python Library
#### Synchronous
```python
from bbot.scanner import Scanner
if __name__ == "__main__":
scan = Scanner("evilcorp.com", presets=["subdomain-enum"])
for event in scan.start():
print(event)
```
#### Asynchronous
```python
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())
```
<details>
<summary><b>SEE: This Nefarious Discord Bot</b></summary>
A [BBOT Discord Bot](https://www.blacklanternsecurity.com/bbot/Stable/dev/#discord-bot-example) that responds to the `/scan` command. Scan the internet from the comfort of your discord server!
![bbot-discord](https://github.com/blacklanternsecurity/bbot/assets/20261699/22b268a2-0dfd-4c2a-b7c5-548c0f2cc6f9)
</details>
## Feature Overview
- Support for Multiple Targets
- Web Screenshots
- Suite of Offensive Web Modules
- NLP-powered Subdomain Mutations
- Native Output to Neo4j (and more)
- Automatic dependency install with Ansible
- Search entire attack surface with custom YARA rules
- Python API + Developer Documentation
## Targets
BBOT accepts an unlimited number of targets via `-t`. You can specify targets either directly on the command line or in files (or both!):
```bash
bbot -t evilcorp.com evilcorp.org 1.2.3.0/24 -p subdomain-enum
```
Targets can be any of the following:
- `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`)
For more information, see [Targets](https://www.blacklanternsecurity.com/bbot/Stable/scanning/#targets-t). To learn how BBOT handles scope, see [Scope](https://www.blacklanternsecurity.com/bbot/Stable/scanning/#scope).
## API Keys
Similar to Amass or Subfinder, BBOT supports API keys for various third-party services such as SecurityTrails, etc.
The standard way to do this is to enter your API keys in **`~/.config/bbot/bbot.yml`**. Note that multiple API keys are allowed:
```yaml
modules:
shodan_dns:
api_key: 4f41243847da693a4f356c0486114bc6
c99:
# multiple API keys
api_key:
- 21a270d5f59c9b05813a72bb41707266
- ea8f243d9885cf8ce9876a580224fd3c
- 5bc6ed268ab6488270e496d3183a1a27
virustotal:
api_key: dd5f0eee2e4a99b71a939bded450b246
securitytrails:
api_key: d9a05c3fd9a514497713c54b4455d0b0
```
If you like, you can also specify them on the command line:
```bash
bbot -c modules.virustotal.api_key=dd5f0eee2e4a99b71a939bded450b246
```
For details, see [Configuration](https://www.blacklanternsecurity.com/bbot/Stable/scanning/configuration/).
## Complete Lists of Modules, Flags, etc.
- Complete list of [Modules](https://www.blacklanternsecurity.com/bbot/Stable/modules/list_of_modules/).
- Complete list of [Flags](https://www.blacklanternsecurity.com/bbot/Stable/scanning/#list-of-flags).
- Complete list of [Presets](https://www.blacklanternsecurity.com/bbot/Stable/scanning/presets_list/).
- Complete list of [Global Config Options](https://www.blacklanternsecurity.com/bbot/Stable/scanning/configuration/#global-config-options).
- Complete list of [Module Config Options](https://www.blacklanternsecurity.com/bbot/Stable/scanning/configuration/#module-config-options).
## Documentation
<!-- BBOT DOCS TOC -->
- **User Manual**
- **Basics**
- [Getting Started](https://www.blacklanternsecurity.com/bbot/Stable/)
- [How it Works](https://www.blacklanternsecurity.com/bbot/Stable/how_it_works)
- [Comparison to Other Tools](https://www.blacklanternsecurity.com/bbot/Stable/comparison)
- **Scanning**
- [Scanning Overview](https://www.blacklanternsecurity.com/bbot/Stable/scanning/)
- **Presets**
- [Overview](https://www.blacklanternsecurity.com/bbot/Stable/scanning/presets)
- [List of Presets](https://www.blacklanternsecurity.com/bbot/Stable/scanning/presets_list)
- [Events](https://www.blacklanternsecurity.com/bbot/Stable/scanning/events)
- [Output](https://www.blacklanternsecurity.com/bbot/Stable/scanning/output)
- [Tips and Tricks](https://www.blacklanternsecurity.com/bbot/Stable/scanning/tips_and_tricks)
- [Advanced Usage](https://www.blacklanternsecurity.com/bbot/Stable/scanning/advanced)
- [Configuration](https://www.blacklanternsecurity.com/bbot/Stable/scanning/configuration)
- **Modules**
- [List of Modules](https://www.blacklanternsecurity.com/bbot/Stable/modules/list_of_modules)
- [Nuclei](https://www.blacklanternsecurity.com/bbot/Stable/modules/nuclei)
- [Custom YARA Rules](https://www.blacklanternsecurity.com/bbot/Stable/modules/custom_yara_rules)
- **Misc**
- [Contribution](https://www.blacklanternsecurity.com/bbot/Stable/contribution)
- [Release History](https://www.blacklanternsecurity.com/bbot/Stable/release_history)
- [Troubleshooting](https://www.blacklanternsecurity.com/bbot/Stable/troubleshooting)
- **Developer Manual**
- [Development Overview](https://www.blacklanternsecurity.com/bbot/Stable/dev/)
- [Setting Up a Dev Environment](https://www.blacklanternsecurity.com/bbot/Stable/dev/dev_environment)
- [BBOT Internal Architecture](https://www.blacklanternsecurity.com/bbot/Stable/dev/architecture)
- [How to Write a BBOT Module](https://www.blacklanternsecurity.com/bbot/Stable/dev/module_howto)
- [Unit Tests](https://www.blacklanternsecurity.com/bbot/Stable/dev/tests)
- [Discord Bot Example](https://www.blacklanternsecurity.com/bbot/Stable/dev/discord_bot)
- **Code Reference**
- [Scanner](https://www.blacklanternsecurity.com/bbot/Stable/dev/scanner)
- [Presets](https://www.blacklanternsecurity.com/bbot/Stable/dev/presets)
- [Event](https://www.blacklanternsecurity.com/bbot/Stable/dev/event)
- [Target](https://www.blacklanternsecurity.com/bbot/Stable/dev/target)
- [BaseModule](https://www.blacklanternsecurity.com/bbot/Stable/dev/basemodule)
- [BBOTCore](https://www.blacklanternsecurity.com/bbot/Stable/dev/core)
- [Engine](https://www.blacklanternsecurity.com/bbot/Stable/dev/engine)
- **Helpers**
- [Overview](https://www.blacklanternsecurity.com/bbot/Stable/dev/helpers/)
- [Command](https://www.blacklanternsecurity.com/bbot/Stable/dev/helpers/command)
- [DNS](https://www.blacklanternsecurity.com/bbot/Stable/dev/helpers/dns)
- [Interactsh](https://www.blacklanternsecurity.com/bbot/Stable/dev/helpers/interactsh)
- [Miscellaneous](https://www.blacklanternsecurity.com/bbot/Stable/dev/helpers/misc)
- [Web](https://www.blacklanternsecurity.com/bbot/Stable/dev/helpers/web)
- [Word Cloud](https://www.blacklanternsecurity.com/bbot/Stable/dev/helpers/wordcloud)
<!-- END BBOT DOCS TOC -->
## Contribution
Some of the best BBOT modules were written by the community. BBOT is being constantly improved; every day it grows more powerful!
We welcome contributions. Not just code, but ideas too! If you have an idea for a new feature, please let us know in [Discussions](https://github.com/blacklanternsecurity/bbot/discussions). If you want to get your hands dirty, see [Contribution](https://www.blacklanternsecurity.com/bbot/Stable/contribution/). There you can find setup instructions and a simple tutorial on how to write a BBOT module. We also have extensive [Developer Documentation](https://www.blacklanternsecurity.com/bbot/Stable/dev/).
Thanks to these amazing people for contributing to BBOT! :heart:
<p align="center">
<a href="https://github.com/blacklanternsecurity/bbot/graphs/contributors">
<img src="https://contrib.rocks/image?repo=blacklanternsecurity/bbot&max=500">
</a>
</p>
Special thanks to:
- @TheTechromancer for creating BBOT
- @liquidsec for his extensive work on BBOT's web hacking features, including [badsecrets](https://github.com/blacklanternsecurity/badsecrets) and [baddns](https://github.com/blacklanternsecurity/baddns)
- Steve Micallef (@smicallef) for creating Spiderfoot
- @kerrymilan for his Neo4j and Ansible expertise
- @domwhewell-sage for his family of badass code-looting modules
- @aconite33 and @amiremami for their ruthless testing
- Aleksei Kornev (@alekseiko) for granting us ownership of the bbot Pypi repository <3
Raw data
{
"_id": null,
"home_page": "https://github.com/blacklanternsecurity/bbot",
"name": "bbot",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.9",
"maintainer_email": null,
"keywords": "python, cli, automation, osint, neo4j, scanner, python-library, hacking, recursion, pentesting, recon, command-line-tool, bugbounty, subdomains, security-tools, subdomain-scanner, osint-framework, attack-surface, subdomain-enumeration, osint-tool",
"author": "TheTechromancer",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/8b/5b/d3938f8601ca27cc395d4f586ea1c0acf1b8c766d79d217ff500983b3785/bbot-2.2.0.tar.gz",
"platform": null,
"description": "[![bbot_banner](https://github.com/user-attachments/assets/f02804ce-9478-4f1e-ac4d-9cf5620a3214)](https://github.com/blacklanternsecurity/bbot)\n\n[![Python Version](https://img.shields.io/badge/python-3.9+-FF8400)](https://www.python.org) [![License](https://img.shields.io/badge/license-GPLv3-FF8400.svg)](https://github.com/blacklanternsecurity/bbot/blob/dev/LICENSE) [![DEF CON Recon Village 2024](https://img.shields.io/badge/DEF%20CON%20Demo%20Labs-2023-FF8400.svg)](https://www.reconvillage.org/talks) [![PyPi Downloads](https://static.pepy.tech/personalized-badge/bbot?right_color=orange&left_color=grey)](https://pepy.tech/project/bbot) [![Black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) [![Tests](https://github.com/blacklanternsecurity/bbot/actions/workflows/tests.yml/badge.svg?branch=stable)](https://github.com/blacklanternsecurity/bbot/actions?query=workflow%3A\"tests\") [![Codecov](https://codecov.io/gh/blacklanternsecurity/bbot/branch/dev/graph/badge.svg?token=IR5AZBDM5K)](https://codecov.io/gh/blacklanternsecurity/bbot) [![Discord](https://img.shields.io/discord/859164869970362439)](https://discord.com/invite/PZqkgxu5SA)\n\n### **BEE\u00b7bot** is a multipurpose scanner inspired by [Spiderfoot](https://github.com/smicallef/spiderfoot), built to automate your **Recon**, **Bug Bounties**, and **ASM**!\n\nhttps://github.com/blacklanternsecurity/bbot/assets/20261699/e539e89b-92ea-46fa-b893-9cde94eebf81\n\n_A BBOT scan in real-time - visualization with [VivaGraphJS](https://github.com/blacklanternsecurity/bbot-vivagraphjs)_\n\n## Installation\n\n```bash\n# stable version\npipx install bbot\n\n# bleeding edge (dev branch)\npipx install --pip-args '\\--pre' bbot\n```\n\n_For more installation methods, including [Docker](https://hub.docker.com/r/blacklanternsecurity/bbot), see [Getting Started](https://www.blacklanternsecurity.com/bbot/Stable/)_\n\n## Example Commands\n\n### 1) Subdomain Finder\n\nPassive API sources plus a recursive DNS brute-force with target-specific subdomain mutations.\n\n```bash\n# find subdomains of evilcorp.com\nbbot -t evilcorp.com -p subdomain-enum\n\n# passive sources only\nbbot -t evilcorp.com -p subdomain-enum -rf passive\n```\n\n<!-- BBOT SUBDOMAIN-ENUM PRESET EXPANDABLE -->\n\n<details>\n<summary><b><code>subdomain-enum.yml</code></b></summary>\n\n```yaml\ndescription: Enumerate subdomains via APIs, brute-force\n\nflags:\n # enable every module with the subdomain-enum flag\n - subdomain-enum\n\noutput_modules:\n # output unique subdomains to TXT file\n - subdomains\n\nconfig:\n dns:\n threads: 25\n brute_threads: 1000\n # put your API keys here\n # modules:\n # github:\n # api_key: \"\"\n # chaos:\n # api_key: \"\"\n # securitytrails:\n # api_key: \"\"\n\n```\n\n</details>\n\n<!-- END BBOT SUBDOMAIN-ENUM PRESET EXPANDABLE -->\n\nBBOT consistently finds 20-50% more subdomains than other tools. The bigger the domain, the bigger the difference. To learn how this is possible, see [How It Works](https://www.blacklanternsecurity.com/bbot/Dev/how_it_works/).\n\n![subdomain-stats-ebay](https://github.com/blacklanternsecurity/bbot/assets/20261699/de3e7f21-6f52-4ac4-8eab-367296cd385f)\n\n### 2) Web Spider\n\n```bash\n# crawl evilcorp.com, extracting emails and other goodies\nbbot -t evilcorp.com -p spider\n```\n\n<!-- BBOT SPIDER PRESET EXPANDABLE -->\n\n<details>\n<summary><b><code>spider.yml</code></b></summary>\n\n```yaml\ndescription: Recursive web spider\n\nmodules:\n - httpx\n\nconfig:\n web:\n # how many links to follow in a row\n spider_distance: 2\n # don't follow links whose directory depth is higher than 4\n spider_depth: 4\n # maximum number of links to follow per page\n spider_links_per_page: 25\n\n```\n\n</details>\n\n<!-- END BBOT SPIDER PRESET EXPANDABLE -->\n\n### 3) Email Gatherer\n\n```bash\n# quick email enum with free APIs + scraping\nbbot -t evilcorp.com -p email-enum\n\n# pair with subdomain enum + web spider for maximum yield\nbbot -t evilcorp.com -p email-enum subdomain-enum spider\n```\n\n<!-- BBOT EMAIL-ENUM PRESET EXPANDABLE -->\n\n<details>\n<summary><b><code>email-enum.yml</code></b></summary>\n\n```yaml\ndescription: Enumerate email addresses from APIs, web crawling, etc.\n\nflags:\n - email-enum\n\noutput_modules:\n - emails\n\n```\n\n</details>\n\n<!-- END BBOT EMAIL-ENUM PRESET EXPANDABLE -->\n\n### 4) Web Scanner\n\n```bash\n# run a light web scan against www.evilcorp.com\nbbot -t www.evilcorp.com -p web-basic\n\n# run a heavy web scan against www.evilcorp.com\nbbot -t www.evilcorp.com -p web-thorough\n```\n\n<!-- BBOT WEB-BASIC PRESET EXPANDABLE -->\n\n<details>\n<summary><b><code>web-basic.yml</code></b></summary>\n\n```yaml\ndescription: Quick web scan\n\ninclude:\n - iis-shortnames\n\nflags:\n - web-basic\n\n```\n\n</details>\n\n<!-- END BBOT WEB-BASIC PRESET EXPANDABLE -->\n\n<!-- BBOT WEB-THOROUGH PRESET EXPANDABLE -->\n\n<details>\n<summary><b><code>web-thorough.yml</code></b></summary>\n\n```yaml\ndescription: Aggressive web scan\n\ninclude:\n # include the web-basic preset\n - web-basic\n\nflags:\n - web-thorough\n\n```\n\n</details>\n\n<!-- END BBOT WEB-THOROUGH PRESET EXPANDABLE -->\n\n### 5) Everything Everywhere All at Once\n\n```bash\n# everything everywhere all at once\nbbot -t evilcorp.com -p kitchen-sink\n\n# roughly equivalent to:\nbbot -t evilcorp.com -p subdomain-enum cloud-enum code-enum email-enum spider web-basic paramminer dirbust-light web-screenshots\n```\n\n<!-- BBOT KITCHEN-SINK PRESET EXPANDABLE -->\n\n<details>\n<summary><b><code>kitchen-sink.yml</code></b></summary>\n\n```yaml\ndescription: Everything everywhere all at once\n\ninclude:\n - subdomain-enum\n - cloud-enum\n - code-enum\n - email-enum\n - spider\n - web-basic\n - paramminer\n - dirbust-light\n - web-screenshots\n - baddns-thorough\n\nconfig:\n modules:\n baddns:\n enable_references: True\n\n\n\n```\n\n</details>\n\n<!-- END BBOT KITCHEN-SINK PRESET EXPANDABLE -->\n\n## How it Works\n\nClick the graph below to explore the [inner workings](https://www.blacklanternsecurity.com/bbot/Stable/how_it_works/) of BBOT.\n\n[![image](https://github.com/blacklanternsecurity/bbot/assets/20261699/e55ba6bd-6d97-48a6-96f0-e122acc23513)](https://www.blacklanternsecurity.com/bbot/Stable/how_it_works/)\n\n## BBOT as a Python Library\n\n#### Synchronous\n```python\nfrom bbot.scanner import Scanner\n\nif __name__ == \"__main__\":\n scan = Scanner(\"evilcorp.com\", presets=[\"subdomain-enum\"])\n for event in scan.start():\n print(event)\n```\n\n#### Asynchronous\n```python\nfrom bbot.scanner import Scanner\n\nasync def main():\n scan = Scanner(\"evilcorp.com\", presets=[\"subdomain-enum\"])\n async for event in scan.async_start():\n print(event.json())\n\nif __name__ == \"__main__\":\n import asyncio\n asyncio.run(main())\n```\n\n<details>\n<summary><b>SEE: This Nefarious Discord Bot</b></summary>\n\nA [BBOT Discord Bot](https://www.blacklanternsecurity.com/bbot/Stable/dev/#discord-bot-example) that responds to the `/scan` command. Scan the internet from the comfort of your discord server!\n\n![bbot-discord](https://github.com/blacklanternsecurity/bbot/assets/20261699/22b268a2-0dfd-4c2a-b7c5-548c0f2cc6f9)\n\n</details>\n\n## Feature Overview\n\n- Support for Multiple Targets\n- Web Screenshots\n- Suite of Offensive Web Modules\n- NLP-powered Subdomain Mutations\n- Native Output to Neo4j (and more)\n- Automatic dependency install with Ansible\n- Search entire attack surface with custom YARA rules\n- Python API + Developer Documentation\n\n## Targets\n\nBBOT accepts an unlimited number of targets via `-t`. You can specify targets either directly on the command line or in files (or both!):\n\n```bash\nbbot -t evilcorp.com evilcorp.org 1.2.3.0/24 -p subdomain-enum\n```\n\nTargets can be any of the following:\n\n- `DNS_NAME` (`evilcorp.com`)\n- `IP_ADDRESS` (`1.2.3.4`)\n- `IP_RANGE` (`1.2.3.0/24`)\n- `OPEN_TCP_PORT` (`192.168.0.1:80`)\n- `URL` (`https://www.evilcorp.com`)\n\nFor more information, see [Targets](https://www.blacklanternsecurity.com/bbot/Stable/scanning/#targets-t). To learn how BBOT handles scope, see [Scope](https://www.blacklanternsecurity.com/bbot/Stable/scanning/#scope).\n\n## API Keys\n\nSimilar to Amass or Subfinder, BBOT supports API keys for various third-party services such as SecurityTrails, etc.\n\nThe standard way to do this is to enter your API keys in **`~/.config/bbot/bbot.yml`**. Note that multiple API keys are allowed:\n```yaml\nmodules:\n shodan_dns:\n api_key: 4f41243847da693a4f356c0486114bc6\n c99:\n # multiple API keys\n api_key:\n - 21a270d5f59c9b05813a72bb41707266\n - ea8f243d9885cf8ce9876a580224fd3c\n - 5bc6ed268ab6488270e496d3183a1a27\n virustotal:\n api_key: dd5f0eee2e4a99b71a939bded450b246\n securitytrails:\n api_key: d9a05c3fd9a514497713c54b4455d0b0\n```\n\nIf you like, you can also specify them on the command line:\n```bash\nbbot -c modules.virustotal.api_key=dd5f0eee2e4a99b71a939bded450b246\n```\n\nFor details, see [Configuration](https://www.blacklanternsecurity.com/bbot/Stable/scanning/configuration/).\n\n## Complete Lists of Modules, Flags, etc.\n\n- Complete list of [Modules](https://www.blacklanternsecurity.com/bbot/Stable/modules/list_of_modules/).\n- Complete list of [Flags](https://www.blacklanternsecurity.com/bbot/Stable/scanning/#list-of-flags).\n- Complete list of [Presets](https://www.blacklanternsecurity.com/bbot/Stable/scanning/presets_list/).\n - Complete list of [Global Config Options](https://www.blacklanternsecurity.com/bbot/Stable/scanning/configuration/#global-config-options).\n - Complete list of [Module Config Options](https://www.blacklanternsecurity.com/bbot/Stable/scanning/configuration/#module-config-options).\n\n## Documentation\n\n<!-- BBOT DOCS TOC -->\n- **User Manual**\n - **Basics**\n - [Getting Started](https://www.blacklanternsecurity.com/bbot/Stable/)\n - [How it Works](https://www.blacklanternsecurity.com/bbot/Stable/how_it_works)\n - [Comparison to Other Tools](https://www.blacklanternsecurity.com/bbot/Stable/comparison)\n - **Scanning**\n - [Scanning Overview](https://www.blacklanternsecurity.com/bbot/Stable/scanning/)\n - **Presets**\n - [Overview](https://www.blacklanternsecurity.com/bbot/Stable/scanning/presets)\n - [List of Presets](https://www.blacklanternsecurity.com/bbot/Stable/scanning/presets_list)\n - [Events](https://www.blacklanternsecurity.com/bbot/Stable/scanning/events)\n - [Output](https://www.blacklanternsecurity.com/bbot/Stable/scanning/output)\n - [Tips and Tricks](https://www.blacklanternsecurity.com/bbot/Stable/scanning/tips_and_tricks)\n - [Advanced Usage](https://www.blacklanternsecurity.com/bbot/Stable/scanning/advanced)\n - [Configuration](https://www.blacklanternsecurity.com/bbot/Stable/scanning/configuration)\n - **Modules**\n - [List of Modules](https://www.blacklanternsecurity.com/bbot/Stable/modules/list_of_modules)\n - [Nuclei](https://www.blacklanternsecurity.com/bbot/Stable/modules/nuclei)\n - [Custom YARA Rules](https://www.blacklanternsecurity.com/bbot/Stable/modules/custom_yara_rules)\n - **Misc**\n - [Contribution](https://www.blacklanternsecurity.com/bbot/Stable/contribution)\n - [Release History](https://www.blacklanternsecurity.com/bbot/Stable/release_history)\n - [Troubleshooting](https://www.blacklanternsecurity.com/bbot/Stable/troubleshooting)\n- **Developer Manual**\n - [Development Overview](https://www.blacklanternsecurity.com/bbot/Stable/dev/)\n - [Setting Up a Dev Environment](https://www.blacklanternsecurity.com/bbot/Stable/dev/dev_environment)\n - [BBOT Internal Architecture](https://www.blacklanternsecurity.com/bbot/Stable/dev/architecture)\n - [How to Write a BBOT Module](https://www.blacklanternsecurity.com/bbot/Stable/dev/module_howto)\n - [Unit Tests](https://www.blacklanternsecurity.com/bbot/Stable/dev/tests)\n - [Discord Bot Example](https://www.blacklanternsecurity.com/bbot/Stable/dev/discord_bot)\n - **Code Reference**\n - [Scanner](https://www.blacklanternsecurity.com/bbot/Stable/dev/scanner)\n - [Presets](https://www.blacklanternsecurity.com/bbot/Stable/dev/presets)\n - [Event](https://www.blacklanternsecurity.com/bbot/Stable/dev/event)\n - [Target](https://www.blacklanternsecurity.com/bbot/Stable/dev/target)\n - [BaseModule](https://www.blacklanternsecurity.com/bbot/Stable/dev/basemodule)\n - [BBOTCore](https://www.blacklanternsecurity.com/bbot/Stable/dev/core)\n - [Engine](https://www.blacklanternsecurity.com/bbot/Stable/dev/engine)\n - **Helpers**\n - [Overview](https://www.blacklanternsecurity.com/bbot/Stable/dev/helpers/)\n - [Command](https://www.blacklanternsecurity.com/bbot/Stable/dev/helpers/command)\n - [DNS](https://www.blacklanternsecurity.com/bbot/Stable/dev/helpers/dns)\n - [Interactsh](https://www.blacklanternsecurity.com/bbot/Stable/dev/helpers/interactsh)\n - [Miscellaneous](https://www.blacklanternsecurity.com/bbot/Stable/dev/helpers/misc)\n - [Web](https://www.blacklanternsecurity.com/bbot/Stable/dev/helpers/web)\n - [Word Cloud](https://www.blacklanternsecurity.com/bbot/Stable/dev/helpers/wordcloud)\n<!-- END BBOT DOCS TOC -->\n\n## Contribution\n\nSome of the best BBOT modules were written by the community. BBOT is being constantly improved; every day it grows more powerful!\n\nWe welcome contributions. Not just code, but ideas too! If you have an idea for a new feature, please let us know in [Discussions](https://github.com/blacklanternsecurity/bbot/discussions). If you want to get your hands dirty, see [Contribution](https://www.blacklanternsecurity.com/bbot/Stable/contribution/). There you can find setup instructions and a simple tutorial on how to write a BBOT module. We also have extensive [Developer Documentation](https://www.blacklanternsecurity.com/bbot/Stable/dev/).\n\nThanks to these amazing people for contributing to BBOT! :heart:\n\n<p align=\"center\">\n<a href=\"https://github.com/blacklanternsecurity/bbot/graphs/contributors\">\n <img src=\"https://contrib.rocks/image?repo=blacklanternsecurity/bbot&max=500\">\n</a>\n</p>\n\nSpecial thanks to:\n\n- @TheTechromancer for creating BBOT\n- @liquidsec for his extensive work on BBOT's web hacking features, including [badsecrets](https://github.com/blacklanternsecurity/badsecrets) and [baddns](https://github.com/blacklanternsecurity/baddns)\n- Steve Micallef (@smicallef) for creating Spiderfoot\n- @kerrymilan for his Neo4j and Ansible expertise\n- @domwhewell-sage for his family of badass code-looting modules\n- @aconite33 and @amiremami for their ruthless testing\n- Aleksei Kornev (@alekseiko) for granting us ownership of the bbot Pypi repository <3\n\n",
"bugtrack_url": null,
"license": "GPL-3.0",
"summary": "OSINT automation for hackers.",
"version": "2.2.0",
"project_urls": {
"Discord": "https://discord.com/invite/PZqkgxu5SA",
"Docker Hub": "https://hub.docker.com/r/blacklanternsecurity/bbot",
"Documentation": "https://www.blacklanternsecurity.com/bbot/",
"Homepage": "https://github.com/blacklanternsecurity/bbot",
"Repository": "https://github.com/blacklanternsecurity/bbot"
},
"split_keywords": [
"python",
" cli",
" automation",
" osint",
" neo4j",
" scanner",
" python-library",
" hacking",
" recursion",
" pentesting",
" recon",
" command-line-tool",
" bugbounty",
" subdomains",
" security-tools",
" subdomain-scanner",
" osint-framework",
" attack-surface",
" subdomain-enumeration",
" osint-tool"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "b1b2979922d3fe4d1df1456e778bc8fbc1d8c94768f5bcd5de37f51ae7a2ecd8",
"md5": "89311ed66c08a81e6f8a41842113f443",
"sha256": "7f9472b0398c1f8faa446351f854df8d5e8319994534ac9bf81502a6fe561cd0"
},
"downloads": -1,
"filename": "bbot-2.2.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "89311ed66c08a81e6f8a41842113f443",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.9",
"size": 1776195,
"upload_time": "2024-11-18T20:32:22",
"upload_time_iso_8601": "2024-11-18T20:32:22.196262Z",
"url": "https://files.pythonhosted.org/packages/b1/b2/979922d3fe4d1df1456e778bc8fbc1d8c94768f5bcd5de37f51ae7a2ecd8/bbot-2.2.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8b5bd3938f8601ca27cc395d4f586ea1c0acf1b8c766d79d217ff500983b3785",
"md5": "18131d710dd9222e0d972c64bba9ad09",
"sha256": "7b896a5aa62f8f9d7a0b73b713092d6e0e57c9b1668f712448640ccb22efdf4c"
},
"downloads": -1,
"filename": "bbot-2.2.0.tar.gz",
"has_sig": false,
"md5_digest": "18131d710dd9222e0d972c64bba9ad09",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.9",
"size": 1607060,
"upload_time": "2024-11-18T20:32:24",
"upload_time_iso_8601": "2024-11-18T20:32:24.199177Z",
"url": "https://files.pythonhosted.org/packages/8b/5b/d3938f8601ca27cc395d4f586ea1c0acf1b8c766d79d217ff500983b3785/bbot-2.2.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-18 20:32:24",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "blacklanternsecurity",
"github_project": "bbot",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "bbot"
}