
ReconHound ist ein Python-basiertes Web-Reconnaissance-Tool, das für Penetrationstester, Bug-Bounty-Jäger und ethische Hacker konzipiert ist. Es unterstützt Verzeichnis- und Dateienumeration, Subdomain-Enumeration, Fuzzing und Virtual-Host-Erkennung (vhost).
ReconHound ist ein Python-basiertes Web-Reconnaissance-Tool, das für Penetrationstester, Bug-Bounty-Jäger und ethische Hacker entwickelt wurde. Es hilft dabei, versteckte Pfade, Dateien, Subdomains, Abfrageparameter, virtuelle Hosts und fuzzbare Endpunkte zu identifizieren – und ist damit eine vielseitige Lösung für tiefgehende Web-Reconnaissance.
Mehrthread-Scanning für schnelle Web-Enumeration
Unterstützt:
Verzeichnis- und Datei-Erkennung
Subdomain-Enumeration
Virtuelle-Host-Erkennung über den Host-Header
Abfrageparameter-Fuzzing
Fuzzing an beliebiger Stelle in der URL mit einem benutzerdefinierten FUZZ-Platzhalter
Speichert Ergebnisse im JSON-Format
Behandelt Unterbrechungen ordentlich und speichert Teilergebnisse
ReconHound sollte verantwortungsbewusst und legal eingesetzt werden. Die unbefugte Nutzung dieses Tools zum Scannen, Fuzzen oder Testen von Websites ohne ausdrückliche Genehmigung ist illegal und unethisch. Der Autor übernimmt keine Haftung für Missbrauch oder rechtliche Konsequenzen, die aus der Nutzung dieses Tools entstehen.
1. Repository klonen:
git clone https://gitlab.com/s_r_e_e_r_a_j/ReconHound.git
2. In das ReconHound-Verzeichnis wechseln:
cd ReconHound
3. Abhängigkeiten installieren:
pip3 install -r requirements.txt
Hinweis für Kali-, Parrot-, Ubuntu 23.04+- und Arch-Linux-Benutzer:
Wenn Sie einen Fehler wie den folgenden sehen:
error: externally-managed-environment
dann verwenden Sie:
pip3 install -r requirements.txt --break-system-packages
4. Führen Sie das install.py-Skript zur Installation aus:
sudo python3 install.py
Geben Sie dann y für die Installation ein
5. Tool ausführen
reconhound [options]
dir – Verzeichnis- & Datei-Enumeration
Beispiel:
reconhound dir -u https://example.com -w /path/to/wordlist/wordlist.txt -e .php,.html -t 20 -o /path/to/save/dir_results.json
sub – Subdomain-Enumeration
Beispiel:
reconhound sub -d example.com -w /path/to/wordlist/wordlist.txt -t 30 -o /path/to/save/sub_results.json
vhost – Virtuelle-Host-Erkennung
Beispiel:
reconhound vhost -i 192.0.2.1 --domain example.com -w /path/to/wordlist/wordlist.txt -t 25 -o /path/to/save/vhost_results.json
fuzz – Abfrageparameter-Fuzzing
Beispiel:
reconhound fuzz -u "https://example.com/page.php?id=FUZZ" -p id -w /path/to/wordlist/wordlist.txt -t 20 -o /path/to/save/fuzz_results.json
reconhound fuzz -u "https://example.com/login?username=admin&password=FUZZ" -p password -w /path/to/wordlist/wordlist.txt -t 15 -o /path/to/save/fuzz_results.json
fuzzany – Fuzzing an beliebiger Stelle in der URL
Beispiel:
reconhound fuzzany -u "https://example.com/FUZZ/login" -w /path/to/wordlist/wordlist.txt -t 15 -o /path/to/save/fuzzany_results.json
reconhound fuzzany -u "https://example.com?FUZZ=admin" -w /path/to/wordlist/wordlist.txt -t 15 -o /path/to/save/fuzzany_results.json
reconhound fuzzany -u "https://example.com/login?username=admin&password=FUZZ" -w /path/to/wordlist/wordlist.txt -t 15 -o /path/to/save/fuzzany_results.json
dir-Modus
reconhound dir --help
sub-Modus
reconhound sub --help
vhost-Modus
reconhound vhost --help
fuzz-Modus
reconhound fuzz --help
fuzzany-Modus
reconhound fuzzany --help
Führen Sie das install.py-Skript aus
sudo python3 install.py
Geben Sie dann n für die Deinstallation ein
Dieses Projekt ist unter der MIT-Lizenz lizenziert.
| Option | Beschreibung |
|---|
-u, --url | Ziel-URL (z.B. https://example.com) |
-w, --wordlist | Pfad zur Verzeichnis/Datei-Wortliste |
-e, --extensions | Kommagetrennte Dateierweiterungen (z.B. .php,.html,.js)(optional) |
-t, --threads | Anzahl der zu verwendenden Threads (Standard: 10)(optional) |
-o, --output | Datei zum Speichern der Ausgabeergebnisse (JSON-Format,out.json)(optional) |
| Option | Beschreibung |
|---|
-d, --domain | Ziel-Domain (z.B. example.com) |
-w, --wordlist | Pfad zur Subdomain-Wortliste |
-t, --threads | Anzahl der zu verwendenden Threads, Standard(10)(optional) |
-o, --output | Datei zum Speichern der Ausgabeergebnisse (JSON-Format,out.json)(optional) |
| Option | Beschreibung |
|---|
-i, --ip | Ziel-IP-Adresse (z.B. 192.0.2.1)(IP der Ziel-Website) |
-d, --domain | Tatsächlicher Domainname, der im Host-Header verwendet wird (Domain der Ziel-Website)(z.B. "example.com") |
-w, --wordlist | Wortliste für virtuelle Hosts (z.B. admin, dev, test) |
-t, --threads | Anzahl der zu verwendenden Threads, Standard:10 (optional) |
-o, --output | Datei zum Speichern der Ausgabeergebnisse (JSON-Format,out.json)(optional) |
| Option | Beschreibung |
|---|
-u, --url | Ziel-URL mit FUZZ im Parameter (z.B. ?id=FUZZ) |
-p, --param | Parametername zum Fuzzen (z.B. id) |
-w, --wordlist | Wortliste der Payloads, die in den Parameter injiziert werden |
-t, --threads | Anzahl der zu verwendenden Threads, Standard:10 (optional) |
-o, --output | Datei zum Speichern der Ausgabeergebnisse (JSON-Format,out.json)(optional) |
| Option | Beschreibung |
|---|
-u, --url | URL mit FUZZ im Pfad oder in der Abfrage (z.B. /FUZZ/login) |
-w, --wordlist | Wortliste zum Ersetzen von FUZZ |
-t, --threads | Anzahl der zu verwendenden Threads, Standard:10(optional) |
-o, --output | Datei zum Speichern der Ausgabeergebnisse (JSON-Format,out.json)(optional) |