
ReconHound è uno strumento di ricognizione web basato su Python progettato per penetration tester, cacciatori di bug bounty e hacker etici. Supporta l'enumerazione di directory e file, l'enumerazione di sottodomini, il fuzzing e la scoperta di host virtuali (vhost).
ReconHound è uno strumento di ricognizione web basato su Python, progettato per penetration tester, bug bounty hunters e hacker etici. Aiuta a identificare percorsi nascosti, file, sottodomini, parametri di query, host virtuali ed endpoint fuzzabili — rendendolo una soluzione versatile per la ricognizione web profonda.
Scansione multi-threading per enumerazione web ad alta velocità
Supporta:
Scoperta di directory e file
Enumerazione dei sottodomini
Rilevamento di host virtuali tramite header Host
Fuzzing dei parametri di query
Fuzzing in qualsiasi punto dell'URL utilizzando un segnaposto FUZZ personalizzato
Salva i risultati in formato JSON
Gestisce con garbo le interruzioni e salva i risultati parziali
ReconHound dovrebbe essere utilizzato in modo responsabile e legale. L'uso non autorizzato di questo strumento per scansionare, fare fuzz o testare siti web senza esplicita autorizzazione è illegale e non etico. L'autore non è responsabile per qualsiasi uso improprio o conseguenze legali derivanti dall'uso di questo strumento.
1. Clona il repository:
git clone https://gitlab.com/s_r_e_e_r_a_j/ReconHound.git
2. Vai alla directory di ReconHound:
cd ReconHound
3. Installa le dipendenze:
pip3 install -r requirements.txt
Nota per gli utenti di Kali, Parrot, Ubuntu 23.04+, Arch Linux:
Se vedi un errore come:
error: externally-managed-environment
allora usa:
pip3 install -r requirements.txt --break-system-packages
4. Esegui lo script install.py per installare:
sudo python3 install.py
Quindi digita y per installare
5. Esegui lo strumento
reconhound [options]
dir – Enumerazione di Directory e File
Esempio:
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 – Enumerazione dei Sottodomini
Esempio:
reconhound sub -d example.com -w /path/to/wordlist/wordlist.txt -t 30 -o /path/to/save/sub_results.json
vhost – Scoperta di Host Virtuali
Esempio:
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 – Fuzzing dei Parametri di Query
Esempio:
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 – Fuzz Ovunque nell'URL
Esempio:
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
modalità dir
reconhound dir --help
modalità sub
reconhound sub --help
modalità vhost
reconhound vhost --help
modalità fuzz
reconhound fuzz --help
modalità fuzzany
reconhound fuzzany --help
Esegui lo script install.py
sudo python3 install.py
Quindi digita n per disinstallare
Questo progetto è concesso in licenza con la Licenza MIT
| Option | Description |
|---|
-u, --url | URL target (es., https://example.com) |
-w, --wordlist | Percorso della wordlist di directory/file |
-e, --extensions | Estensioni file separate da virgola (es., .php,.html,.js)(opzionale) |
-t, --threads | Numero di thread da usare (default: 10)(opzionale) |
-o, --output | File per salvare i risultati (formato JSON, out.json)(opzionale) |
| Option | Description |
|---|
-d, --domain | Dominio target (es., example.com) |
-w, --wordlist | Percorso della wordlist dei sottodomini |
-t, --threads | Numero di thread da usare, default(10)(opzionale) |
-o, --output | File per salvare i risultati (formato JSON, out.json)(opzionale) |
| Option | Description |
|---|
-i, --ip | Indirizzo IP target (es., 192.0.2.1)(IP del sito web target) |
-d, --domain | Nome dominio reale usato nell'header Host (dominio del sito web target)(es., "example.com") |
-w, --wordlist | Wordlist di host virtuali (es., admin, dev, test) |
-t, --threads | Numero di thread da usare, default:10 (opzionale) |
-o, --output | File per salvare i risultati (formato JSON, out.json)(opzionale) |
| Option | Description |
|---|
-u, --url | URL target con FUZZ nel parametro (es., ?id=FUZZ) |
-p, --param | Nome del parametro da fuzzare (es., id) |
-w, --wordlist | Wordlist di payload da iniettare nel parametro |
-t, --threads | Numero di thread da usare, default:10 (opzionale) |
-o, --output | File per salvare i risultati (formato JSON, out.json)(opzionale) |
| Option | Description |
|---|
-u, --url | URL contenente FUZZ nel percorso o nella query (es., /FUZZ/login) |
-w, --wordlist | Wordlist per sostituire FUZZ |
-t, --threads | Numero di thread da usare, default:10(opzionale) |
-o, --output | File per salvare i risultati (formato JSON, out.json)(opzionale) |