
Schneller IP-zu-Hostname-Resolver mit PTR, SSL/TLS-Lookup, SNI, JSON.
whathost ist ein hochperformantes Reconnaissance-Tool, das für Sicherheitsexperten, Penetrationstester und Bug-Bounty-Jäger entwickelt wurde. Es löst IP-Adressen schnell zu Hostnamen auf – durch die Inspektion von SSL/TLS-Zertifikaten und DNS-PTR-Lookups – und ermöglicht so eine umfassende Host-Enumeration für Sicherheitsbewertungen.
SSL/TLS-Zertifikats-Enumeration
:8443, :8080)DNS-PTR-Lookups
Performance-Optimierung
Flexible Ausgabe
Zuverlässigkeit
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
Schnellscan aus Datei:
whathost -i targets.txt
Pipeline von stdin:
cat ips.txt | whathost
Hochgeschwindigkeits-Scan mit 100 Workern:
whathost -i targets.txt -t 100
Silent-Modus für saubere Ausgabe:
whathost -i targets.txt -silent | sort -u
Nur-SSL-Enumeration (DNS überspringen):
whathost -i targets.txt -skip-dns -t 200
Nur DNS mit benutzerdefiniertem Resolver:
whathost -i targets.txt -skip-ssl -r 8.8.8.8 -p 53
JSON-Ausgabe mit Statistiken:
whathost -i targets.txt -json -stats -dedupe > results.json
Ratenbegrenzter Scan mit Verzögerung:
whathost -i targets.txt -delay 100ms -timeout 15
Benutzerdefinierter SNI für virtuelle Hosts:
whathost -i targets.txt -sni example.com -insecure
Ausführliches Debugging:
whathost -i targets.txt -v -stats
Vollständiger Aufklärungs-Workflow:
cat targets.txt | whathost -t 100 -dedupe -timestamp -o results.txt -stats
| Flag | Alias | Beschreibung |
|---|---|---|
-i | Eingabedatei mit IPs (Standard: stdin) | |
-o | Ausgabedatei für Ergebnisse (Standard: stdout) | |
-json | Ergebnisse im JSON-Format ausgeben | |
-silent | -s | Silent-Modus – nur Hostnamen ausgeben |
-timestamp | RFC3339-Zeitstempel zu Ergebnissen hinzufügen |
| Flag | Alias | Beschreibung |
|---|---|---|
-t | -threads | Anzahl gleichzeitiger Worker (Standard: 32) |
-delay | Verzögerung zwischen Anfragen (z. B. 100ms, 1s) | |
-timeout | HTTP-Client-Timeout in Sekunden (Standard: 10) |
| Flag | Alias | Beschreibung |
|---|---|---|
-r | -resolver | Benutzerdefinierte DNS-Resolver-IP-Adresse |
-p | DNS-Resolver-Port (Standard: 53) | |
-protocol | DNS-Protokoll: udp oder tcp (Standard: udp) | |
-dns-timeout | DNS-Lookup-Timeout in Sekunden (Standard: 5) | |
-skip-dns | DNS-PTR-Lookups überspringen |
| Flag | Beschreibung |
|---|---|
-sni | SNI-Hostname für SSL-Verbindungen überschreiben |
-insecure | TLS-Zertifikatsprüfung überspringen (Standard: true) |
-skip-ssl | SSL-Zertifikatsprüfungen überspringen |
| Flag | Alias | Beschreibung |
|---|---|---|
-dedupe | Hostnamen in der Ausgabe deduplizieren | |
-stats | Detaillierte Statistiken bei Abschluss anzeigen | |
-v | -verbose | Ausführliche Ausgabe mit Debug-Informationen |
-banner | ASCII-Banner beim Start anzeigen | |
-version | Versionsinformationen anzeigen |
[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
cat ct-log-ips.txt | whathost -skip-dns -t 200 -silent
whathost -i targets.txt -skip-ssl -r 1.1.1.1 -v