À propos du projet

BBOT (BEE·bot) est un scanner internet récursif polyvalent inspiré de Spiderfoot, destiné à la reconnaissance, au bug bounty et à la gestion de la surface d'attaque (ASM). Il est écrit en Python (3.10+) et publié sous licence AGPLv3. Flux de travail principal : vous lui fournissez des cibles et un preset, et il exécute une chaîne de modules qui émettent des événements, lesquels alimentent d'autres modules. Les presets regroupent des flags, des modules et de la configuration. Parmi les exemples figurent subdomain-enum (API passives plus force brute DNS récursive avec mutations spécifiques à la cible), spider (exploration web récursive), email-enum, web et web-heavy, et kitchen-sink (combine énumération de sous-domaines, cloud, code et email, exploration web, minage de paramètres, force brute web et captures d'écran). Les cibles peuvent être des noms DNS, des adresses IP, des plages IP, des ports TCP ouverts, des URL, des adresses email, des organisations, des noms d'utilisateur, des chemins de système de fichiers et des liens d'applications mobiles ; plusieurs cibles peuvent être fournies en ligne de commande ou dans des fichiers. Les modules de sortie couvrent Neo4j, Teams, Discord, Slack, Postgres, MySQL, SQLite, Splunk, Elasticsearch, CSV, JSON, HTTP et Websocket. Les clés API pour les services tiers (SecurityTrails, Shodan, VirusTotal, etc.) se configurent dans ~/.config/bbot/secrets.yml ou en ligne de commande. BBOT peut aussi être utilisé comme bibliothèque Python, avec des API de scanner synchrones et asynchrones, et un exemple documenté d'un bot Discord qui répond à une commande /scan est disponible. Les points forts listés par le projet incluent le support de cibles multiples, les captures d'écran web, les modules web offensifs, les mutations de sous-domaines assistées par NLP, la sortie native Neo4j, l'installation automatique des dépendances avec Ansible, la recherche de règles YARA personnalisées sur toute la surface d'attaque et une documentation pour développeurs. L'installation se fait via pipx (version stable ou préliminaire) ou Docker. Le projet signale que BBOT 3.0 introduit des changements incompatibles dans la CLI, les presets, les modules, les événements et l'API Python par rapport à la version 2.x, et fournit un guide de migration. Il suggère également d'ajouter davantage de résolveurs DNS non filtrés pour accélérer les scans.