
Ein Bash-Skript und ein Docker-Image für Bug-Bounty-Reconnaissance. Für den headless Einsatz vorgesehen.
Ein Bash-Skript und Docker-Image für Bug-Bounty-Reconnaissance, ausgelegt für den headslessen Einsatz. Ressourcenschonend, hoher Informationsoutput.
Hilfreich? Hat dir BugBountyScanner eine Bounty eingebracht?
⚠ Hinweis: Die Nutzung des Skripts über ein VPN wird dringend empfohlen.
Es wird empfohlen, BugBountyScanner von einem Server (VPS oder Heimserver) aus auszuführen, und nicht von deinem Terminal. Es ist darauf ausgelegt, ressourcenschonend zu sein, mit potenziell mehrtägigen Scans für größere Scopes. Das Skript funktioniert eigenständig.
Du kannst das Skript entweder als Docker-Image oder von deinem bevorzugten Debian/Ubuntu-System aus ausführen (siehe unten). Alles, was erforderlich ist, ist das Skript zu starten und es dann zu vergessen! Die Ausführung des Skripts dauert zwischen wenigen Minuten (für sehr kleine Scopes < 10 Subdomains) und mehreren Tagen (für sehr große Scopes > 20000 Subdomains). Ein 'Quick-Mode'-Flag ist vorhanden, das einige zeitaufwändige Aufgaben wie Schwachstellenidentifikation, Port-Scanning und Web-Endpunkt-Crawling auslässt.
Docker Hub Link: https://hub.docker.com/r/chvancooten/bugbountyscanner. Images werden per CI/CD auf den :latest-Tag gepusht, sobald ein Update an BugBountyScanner gepusht wird und alle Tests bestehen.
Du kannst das Docker-Image wie folgt von Docker Hub pullen und ausführen.
docker pull chvancooten/bugbountyscanner
docker run -v $(pwd):/root/bugbounty -it chvancooten/bugbountyscanner /bin/bash
Docker-Compose kann ebenfalls verwendet werden.
version: "3"
services:
bugbountybox:
container_name: BugBountyBox
stdin_open: true
tty: true
image: chvancooten/bugbountyscanner:latest
environment:
- telegram_api_key=X
- telegram_chat_id=X
volumes:
- ${USERDIR}/docker/bugbountybox:/root/bugbounty
# VPN empfohlen :)
network_mode: service:your_vpn_container
depends_on:
- your_vpn_container
Alternativ kannst du das Image aus dem Quellcode bauen.
git clone https://github.com/chvancooten/BugBountyScanner.git
cd BugBountyScanner
docker build .
Wenn du das Skript lieber manuell ausführen möchtest, ist das möglich.
ℹ Hinweis: Das Skript wurde auf Ubuntu 20.04 entwickelt und getestet. Die Erfahrung kann mit anderen Distributionen variieren, sollte aber auf den meisten Debian-basierten Installationen (wie Kali Linux) funktionieren.
git clone https://github.com/chvancooten/BugBountyScanner.git
cd BugBountyScanner
cp .env.example .env # Entsprechend anpassen
chmod +x BugBountyScanner.sh setup.sh
./setup.sh -t /custom/tools/dir # Setup wird automatisch gestartet, kann aber manuell ausgeführt werden
./BugBountyScanner.sh --help
./BugBountyScanner.sh -d target1.com -d target2.net -t /custom/tools/dir --quick
Verwende --help oder -h für ein kurzes Hilfemenü.
root@dockerhost:~# ./BugBountyScanner.sh -h
BugBountyHunter - Automatisiertes Bug-Bounty-Reconnaissance-Skript
./BugBountyScanner.sh [Optionen]
Optionen:
-h, --help Hilfe anzeigen
-t, --toolsdir Tools-Verzeichnis (ohne abschließenden /), Standard: '/opt'
-q, --quick Nur schnelle Recon durchführen (Standard: false)
-d, --domain <domain> Top-Domain zum Scannen, kann mehrfach angegeben werden
-o, --outputdirectory Übergeordnetes Ausgabeverzeichnis, Standard: aktuelles Verzeichnis (Unterordner werden pro Domain erstellt)
-w, --overwrite Vorhandene Dateien überschreiben. Schritte mit vorhandenen Dateien überspringen, falls nicht angegeben (Standard: false)
Hinweis: 'ToolsDir', 'telegram_api_key' und 'telegram_chat_id' können in .env oder über Docker-Umgebungsvariablen definiert werden.
Beispiel:
./BugBountyScanner.sh --quick -d google.com -d uber.com -t /opt
amassaquatonednsutilsffufgauGf (mit Gf-Patterns)GogospiderhttpxnmapNuclei (mit Nuclei-Templates)qsreplacesubjackEin großes Dankeschön an alle Mitwirkenden, die zur Verbesserung beigetragen haben. Eure Beiträge werden sehr geschätzt.