
Resolver veloce da IP a hostname con PTR, lookup SSL/TLS, SNI, JSON.
whathost è uno strumento di ricognizione ad alte prestazioni progettato per professionisti della sicurezza, penetration tester e bug bounty hunter. Risolve rapidamente indirizzi IP in nomi host tramite l'ispezione dei certificati SSL/TLS e le query DNS PTR, fornendo un'enumerazione completa degli host per le valutazioni di sicurezza.
Enumerazione dei certificati SSL/TLS
:8443, :8080)Query DNS PTR
Ottimizzazione delle prestazioni
Flessibilità dell'output
Affidabilità
go install gitlab.com/bountrix/whathost@latest
git clone https://gitlab.com/bountrix/whathost.git
cd whathost
go build -o whathost
sudo mv whathost /usr/local/bin/whathost
whathost -version
Scansione rapida da file:
whathost -i targets.txt
Pipeline da stdin:
cat ips.txt | whathost
Scansione ad alta velocità con 100 worker:
whathost -i targets.txt -t 100
Modalità silenziosa per un output pulito:
whathost -i targets.txt -silent | sort -u
Enumerazione solo SSL (salta DNS):
whathost -i targets.txt -skip-dns -t 200
Solo DNS con resolver personalizzato:
whathost -i targets.txt -skip-ssl -r 8.8.8.8 -p 53
Output JSON con statistiche:
whathost -i targets.txt -json -stats -dedupe > results.json
Scansione con limitazione della frequenza e ritardo:
whathost -i targets.txt -delay 100ms -timeout 15
SNI personalizzato per host virtuali:
whathost -i targets.txt -sni example.com -insecure
Debug dettagliato:
whathost -i targets.txt -v -stats
Workflow di ricognizione completo:
cat targets.txt | whathost -t 100 -dedupe -timestamp -o results.txt -stats
| Flag | Alias | Descrizione |
|---|---|---|
-i | File di input contenente gli IP (predefinito: stdin) | |
-o | File di output per i risultati (predefinito: stdout) | |
-json | Restituisce i risultati in formato JSON | |
-silent | -s | Modalità silenziosa - restituisce solo i nomi host |
-timestamp | Aggiunge timestamp RFC3339 ai risultati |
| Flag | Alias | Descrizione |
|---|---|---|
-t | -threads | Numero di worker concorrenti (predefinito: 32) |
-delay | Ritardo tra le richieste (es. 100ms, 1s) | |
-timeout | Timeout del client HTTP in secondi (predefinito: 10) |
| Flag | Alias | Descrizione |
|---|---|---|
-r | -resolver | Indirizzo IP del resolver DNS personalizzato |
-p | Porta del resolver DNS (predefinito: 53) | |
-protocol | Protocollo DNS: udp o tcp (predefinito: udp) | |
-dns-timeout | Timeout della risoluzione DNS in secondi (predefinito: 5) | |
-skip-dns | Salta le ricerche DNS PTR |
| Flag | Descrizione |
|---|---|
-sni | Sovrascrive il nome host SNI per le connessioni SSL |
-insecure | Salta la verifica del certificato TLS (predefinito: true) |
-skip-ssl | Salta i controlli del certificato SSL |
| Flag | Alias | Descrizione |
|---|---|---|
-dedupe | Deduplica i nomi host nell'output | |
-stats | Mostra statistiche dettagliate al completamento | |
-v | -verbose | Output dettagliato con informazioni di debug |
-banner | Mostra il banner ASCII all'avvio | |
-version | Visualizza le informazioni sulla versione |
[SSL-SAN] 143.43.221.133 -> example.com
[SSL-CN] 143.43.221.133 -> example.org
[DNS-PTR] 143.43.221.133 -> host.example.com
[SSL-SAN] 143.43.221.133:8443 -> api.example.com
{
"type": "SSL-SAN",
"ip": "143.43.221.133",
"hostname": "example.com",
"source": "certificate"
}{
"type": "SSL-CN",
"ip": "143.43.221.133",
"hostname": "example.org",
"source": "certificate"
}{
"type": "DNS-PTR",
"ip": "143.43.221.133",
"hostname": "host.example.com",
"source": "dns"
}{
"type": "SSL-SAN",
"ip": "143.43.221.133",
"hostname": "api.example.com",
"port": "8443",
"source": "certificate"
}
example.com
example.org
host.example.com
api.example.com
╔════════════════════════════════════════════╗
║ Statistics Report ║
╠════════════════════════════════════════════╣
║ Total IPs processed: 250 ║
║ SSL hostnames found: 487 ║
║ DNS PTR records: 198 ║
║ Unique hostnames: 623 ║
║ Failed checks: 12 ║
║ Time elapsed: 45.3s ║
║ Processing rate: 5.52 IPs/s ║
╚════════════════════════════════════════════╝
cat ip-ranges.txt | whathost -silent -dedupe | httprobe
whathost -i scope-ips.txt -stats -o discovered-hosts.txt
whathost -i company-ips.txt -json -dedupe > asset-inventory.json