TheHarvester: Unterschied zwischen den Versionen
| Zeile 1: | Zeile 1: | ||
=TheHarvester Grundlagen= | =TheHarvester Grundlagen= | ||
==Paketbeschreibung== | ==Paketbeschreibung== | ||
| − | + | theHarvester sammelt im frühen Stadium eines Penetrationstests passiv Informationen über eine Domain bzw. Organisation: | |
| − | + | *E-Mails | |
| − | + | *Subdomains und Hosts | |
| − | + | *IP-Adressen | |
| − | * | + | *Mitarbeiternamen |
| − | + | *offene Ports und Banner (über angereicherte Quellen wie Shodan) | |
| − | + | Die Daten stammen aus öffentlichen Quellen: Suchmaschinen, Certificate-Transparency-Logs, Passive-DNS-Diensten, PGP-Keyservern und kommerziellen OSINT-APIs. | |
| − | + | ||
| − | + | ;Einsatzzweck | |
| − | + | *Hilft dem Pentester, die externe Angriffsfläche zu kartieren, ohne das Ziel direkt zu kontaktieren. | |
| − | + | *Ebenso für Verteidiger/SOC nützlich: "Was sieht ein Angreifer rein passiv über uns?" | |
| − | + | ||
| − | |||
| − | * | ||
| − | * | ||
==Quelle== | ==Quelle== | ||
*https://github.com/laramies/theHarvester/ | *https://github.com/laramies/theHarvester/ | ||
| − | + | Autor: Christian Martorella, Edge-Security | |
| − | Autor: Christian Martorella | ||
Lizenz: GPLv2 | Lizenz: GPLv2 | ||
| + | Dokumentierte Version in diesem Artikel: theHarvester 4.10.1 (Kali) | ||
=TheHarvester Optionen= | =TheHarvester Optionen= | ||
| − | == | + | ==Maßgebliche Optionsliste der eigenen Version ermitteln== |
| − | ; | + | Die Optionen und unterstützten Quellen ändern sich zwischen den Versionen. Verbindlich ist immer die eigene Installation, nicht das Online-README. |
| − | */ | + | ;Optionen anzeigen |
| − | + | *theHarvester -h | |
| − | + | ;Nur die unterstützten Quellen herausziehen | |
| − | + | *theHarvester -h | sed -n '/-b SOURCE/,/^$/p' | |
| − | |||
| − | + | ==Optionen (4.10.1)== | |
| − | + | ;Allgemein | |
| − | + | *-d, --domain DOMAIN | |
| + | Ziel-Domain oder Firmenname. | ||
| + | *-l, --limit LIMIT | ||
| + | Begrenzt die Anzahl der Ergebnisse, default=500. | ||
| + | *-S, --start START | ||
| + | Beginnt ab Ergebnis Nummer X, default=0. | ||
| + | *-b, --source SOURCE | ||
| + | Komma-getrennte Liste der Quellen (siehe unten). | ||
| + | *-f, --filename FILENAME | ||
| + | Speichert die Ergebnisse als JSON und XML (Basisname ohne Endung angeben). | ||
| + | ;Passiv / Anreicherung | ||
| + | *-g, --google-dork | ||
| + | Google-Dorks verwenden (Wortliste unter /etc/theHarvester/wordlists/dorks.txt). | ||
| + | *-p, --proxies | ||
| + | Anfragen über Proxys aus /etc/theHarvester/proxies.yaml leiten. | ||
| + | *-s, --shodan | ||
| + | Gefundene Hosts über Shodan anreichern (Ports/Banner, API-Key erforderlich). | ||
| + | ;Aktiv (nimmt Kontakt zu Ziel/DNS auf - nur im Scope!) | ||
| + | *-c, --dns-brute | ||
| + | DNS-Brute-Force gegen die Domain (interne Wortliste). | ||
| + | *-n, --dns-lookup | ||
| + | DNS-Auflösung der gefundenen Hosts aktivieren, default False. | ||
| + | *-v, --virtual-host | ||
| + | Hostnamen per DNS auflösen und auf virtuelle Hosts prüfen. | ||
| + | *-e, --dns-server DNS_SERVER | ||
| + | Eigenen DNS-Server für die Auflösung verwenden. | ||
| + | *-t, --dns-tld | ||
| + | DNS-TLD-Expansion (gleicher Name unter anderen TLDs). | ||
| + | *-r, --take-over | ||
| + | Auf Subdomain-Takeover prüfen. | ||
| + | *--screenshot VERZEICHNIS | ||
| + | Screenshots aufgelöster Hosts in das angegebene Verzeichnis (sinnvoll nur zusammen mit DNS-Auflösung). | ||
| + | ;Neuere Optionen (mit theHarvester -h gegenprüfen) | ||
| + | *--dns-resolve | ||
| + | DNS-Auflösung der Subdomains mit eigener Resolver-Liste. | ||
| + | *-w, --wordlist | ||
| + | Wortliste für API-Endpoint-Scan. | ||
| + | *-a, --api-scan | ||
| + | Nach API-Endpunkten suchen. | ||
| − | + | =TheHarvester Quellen= | |
| − | + | ==Kostenlose Quellen ohne API-Key== | |
| + | Diese Quellen wurden gegen tuxmen.de mit 4.10.1 erfolgreich ohne Key genutzt: | ||
| + | *crtsh, certspotter (Certificate-Transparency-Logs) | ||
| + | *otx, rapiddns, subdomaincenter, thc (Passive DNS / Subdomain-Dienste) | ||
| + | *urlscan (URL-/Website-Scanner) | ||
| + | *hackertarget (stark limitiert) | ||
| + | Zusätzlich keyfrei nutzbar (Suchmaschinen): duckduckgo, yahoo, baidu. | ||
| − | + | ;Hinweis | |
| − | + | *certspotter, otx und urlscan funktionieren ohne Key. Ein optionaler Key hebt nur die Limits an. | |
| − | + | ==Quelle mit kostenlosem API-Key: DNSDumpster== | |
| − | + | Kostenloser Key nach Registrierung unter https://dnsdumpster.com/ (Free-Tier: 50 Abfragen/Tag). Eintrag in /etc/theHarvester/api-keys.yaml: | |
| − | + | <pre> | |
| − | + | dnsdumpster: | |
| − | + | key: API-KEY | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
</pre> | </pre> | ||
| + | ;Aufruf | ||
| + | *theHarvester -b dnsdumpster -d tuxmen.de | ||
| − | == | + | ==API-Keys eintragen== |
| − | + | ;Speicherort | |
| − | + | */etc/theHarvester/api-keys.yaml | |
| − | + | Die tatsächlich erwartete Struktur immer aus der Datei selbst entnehmen (Format ändert sich je Version): | |
| − | + | *cat /etc/theHarvester/api-keys.yaml | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | * | ||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | * | ||
| − | == | + | ==Vorschläge für weitere Keys (Free-Tier vorhanden - noch zu entscheiden)== |
| − | + | {| class="wikitable" | |
| − | + | ! Quelle !! Free-Tier !! Liefert !! Warum interessant | |
| − | + | |- | |
| − | + | | securityTrails || ja, limitiert || DNS-Historie || deckt alte/vergessene Records und frühere IPs auf | |
| − | + | |- | |
| − | + | | hunter || ja, limitiert || E-Mails || namensgebende E-Mail-Funktion, fehlt sonst im Kurs | |
| − | + | |- | |
| − | + | | github-code || ja (GitHub-PAT) || Secrets/Configs in Repos || didaktisch stark: Funde von Keys/Configs | |
| − | + | |- | |
| − | + | | censys || ja, limitiert || Zertifikate, Subdomains || zweite CT-/Zertifikatsquelle | |
| − | + | |- | |
| − | + | | virustotal || ja, limitiert || Subdomains, Relationen || gute Ergänzung zu CT-Logs | |
| − | + | |- | |
| − | + | | fullhunt / netlas / onyphe || ja, limitiert || Assets, Ports || Attack-Surface-Sicht | |
| − | + | |} | |
| − | + | ;Kostenpflichtig / sehr eng limitiert (optional) | |
| − | + | *shodan, criminalip, fofa - Ports und Banner, aber kein echter Free-Tier mehr. | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | * | ||
| − | |||
=TheHarvester Beispiele= | =TheHarvester Beispiele= | ||
==Subdomain-Ermittlung über Certificate-Transparency-Logs (crt.sh)== | ==Subdomain-Ermittlung über Certificate-Transparency-Logs (crt.sh)== | ||
| − | Subdomains | + | Subdomains aus öffentlichen CT-Logs. Alle öffentlich ausgestellten TLS-Zertifikate müssen in CT-Logs veröffentlicht werden, wodurch sich Hostnamen passiv ermitteln lassen, ohne das Zielsystem zu kontaktieren. |
*theHarvester -d tuxmen.de -b crtsh | *theHarvester -d tuxmen.de -b crtsh | ||
| − | + | ||
| − | |||
| − | |||
| − | |||
| − | |||
==Passive DNS- und Host-Abfrage über HackerTarget== | ==Passive DNS- und Host-Abfrage über HackerTarget== | ||
| − | + | Schnelle, stark limitierte Abfrage von Hostnamen und IPs. Gut zur Einordnung und als Ergänzung zu CT-Logs. | |
*theHarvester -d tuxmen.de -b hackertarget | *theHarvester -d tuxmen.de -b hackertarget | ||
| − | == | + | ==Komplette Recon ohne API-Keys + Ausgabe speichern== |
| − | + | Mehrere freie Quellen kombiniert, Ergebnis als JSON/XML. | |
| − | + | *theHarvester -d tuxmen.de -b crtsh,certspotter,otx,rapiddns,subdomaincenter,thc,urlscan,hackertarget -f tuxmen-recon | |
| + | |||
| + | ==Freie Quellen + DNSDumpster (API-Key)== | ||
| + | *theHarvester -d tuxmen.de -b crtsh,certspotter,otx,rapiddns,subdomaincenter,thc,urlscan,hackertarget,dnsdumpster -f tuxmen-recon | ||
| + | |||
| + | ==Kombinierte Subdomain- und Shodan-Abfrage== | ||
| + | Zuerst Hostnamen und IPs ermitteln, dann mit -s die IPs über Shodan um Ports/Dienste anreichern. Shodan-Key erforderlich (https://account.shodan.io/, Abschnitt shodan in api-keys.yaml). | ||
*theHarvester -d tuxmen.de -s -b crtsh,dnsdumpster | *theHarvester -d tuxmen.de -s -b crtsh,dnsdumpster | ||
| − | == | + | ==Aktive Anreicherung (nur im freigegebenen Scope!)== |
| − | *theHarvester -d tuxmen.de -b | + | ;DNS-Brute-Force + Auflösung |
| + | *theHarvester -d tuxmen.de -b crtsh,otx -c -n | ||
| + | ;Virtuelle Hosts prüfen und Screenshots ablegen | ||
| + | *theHarvester -d tuxmen.de -b crtsh,otx -v --screenshot /tmp/shots-tuxmen | ||
| + | ;Subdomain-Takeover-Check | ||
| + | *theHarvester -d tuxmen.de -b crtsh -r | ||
| + | |||
| + | =Weiterverarbeitung: von theHarvester zu nmap= | ||
| + | Die mit -f erzeugte JSON-Datei liefert direkt die IP-Liste für den nmap-Scan (siehe nmap-Artikel). | ||
| + | ;IPs extrahieren und an nmap übergeben | ||
| + | <pre> | ||
| + | jq -r '.ips[]' tuxmen-recon.json | sort -u > tuxmen-ips.txt | ||
| + | nmap -iL tuxmen-ips.txt -sV -oA tuxmen-nmap | ||
| + | </pre> | ||
=Aufgaben= | =Aufgaben= | ||
| − | *Untersuche folgende | + | ''(Strukturierte Aufgaben mit Ergebnistabelle folgen - vgl. nmap-Artikel.)'' |
| + | *Untersuche folgende Domains rein passiv: | ||
**heise.de | **heise.de | ||
**suse.de | **suse.de | ||
Version vom 22. Juni 2026, 17:33 Uhr
TheHarvester Grundlagen
Paketbeschreibung
theHarvester sammelt im frühen Stadium eines Penetrationstests passiv Informationen über eine Domain bzw. Organisation:
- E-Mails
- Subdomains und Hosts
- IP-Adressen
- Mitarbeiternamen
- offene Ports und Banner (über angereicherte Quellen wie Shodan)
Die Daten stammen aus öffentlichen Quellen: Suchmaschinen, Certificate-Transparency-Logs, Passive-DNS-Diensten, PGP-Keyservern und kommerziellen OSINT-APIs.
- Einsatzzweck
- Hilft dem Pentester, die externe Angriffsfläche zu kartieren, ohne das Ziel direkt zu kontaktieren.
- Ebenso für Verteidiger/SOC nützlich: "Was sieht ein Angreifer rein passiv über uns?"
Quelle
Autor: Christian Martorella, Edge-Security Lizenz: GPLv2 Dokumentierte Version in diesem Artikel: theHarvester 4.10.1 (Kali)
TheHarvester Optionen
Maßgebliche Optionsliste der eigenen Version ermitteln
Die Optionen und unterstützten Quellen ändern sich zwischen den Versionen. Verbindlich ist immer die eigene Installation, nicht das Online-README.
- Optionen anzeigen
- theHarvester -h
- Nur die unterstützten Quellen herausziehen
- theHarvester -h | sed -n '/-b SOURCE/,/^$/p'
Optionen (4.10.1)
- Allgemein
- -d, --domain DOMAIN
Ziel-Domain oder Firmenname.
- -l, --limit LIMIT
Begrenzt die Anzahl der Ergebnisse, default=500.
- -S, --start START
Beginnt ab Ergebnis Nummer X, default=0.
- -b, --source SOURCE
Komma-getrennte Liste der Quellen (siehe unten).
- -f, --filename FILENAME
Speichert die Ergebnisse als JSON und XML (Basisname ohne Endung angeben).
- Passiv / Anreicherung
- -g, --google-dork
Google-Dorks verwenden (Wortliste unter /etc/theHarvester/wordlists/dorks.txt).
- -p, --proxies
Anfragen über Proxys aus /etc/theHarvester/proxies.yaml leiten.
- -s, --shodan
Gefundene Hosts über Shodan anreichern (Ports/Banner, API-Key erforderlich).
- Aktiv (nimmt Kontakt zu Ziel/DNS auf - nur im Scope!)
- -c, --dns-brute
DNS-Brute-Force gegen die Domain (interne Wortliste).
- -n, --dns-lookup
DNS-Auflösung der gefundenen Hosts aktivieren, default False.
- -v, --virtual-host
Hostnamen per DNS auflösen und auf virtuelle Hosts prüfen.
- -e, --dns-server DNS_SERVER
Eigenen DNS-Server für die Auflösung verwenden.
- -t, --dns-tld
DNS-TLD-Expansion (gleicher Name unter anderen TLDs).
- -r, --take-over
Auf Subdomain-Takeover prüfen.
- --screenshot VERZEICHNIS
Screenshots aufgelöster Hosts in das angegebene Verzeichnis (sinnvoll nur zusammen mit DNS-Auflösung).
- Neuere Optionen (mit theHarvester -h gegenprüfen)
- --dns-resolve
DNS-Auflösung der Subdomains mit eigener Resolver-Liste.
- -w, --wordlist
Wortliste für API-Endpoint-Scan.
- -a, --api-scan
Nach API-Endpunkten suchen.
TheHarvester Quellen
Kostenlose Quellen ohne API-Key
Diese Quellen wurden gegen tuxmen.de mit 4.10.1 erfolgreich ohne Key genutzt:
- crtsh, certspotter (Certificate-Transparency-Logs)
- otx, rapiddns, subdomaincenter, thc (Passive DNS / Subdomain-Dienste)
- urlscan (URL-/Website-Scanner)
- hackertarget (stark limitiert)
Zusätzlich keyfrei nutzbar (Suchmaschinen): duckduckgo, yahoo, baidu.
- Hinweis
- certspotter, otx und urlscan funktionieren ohne Key. Ein optionaler Key hebt nur die Limits an.
Quelle mit kostenlosem API-Key: DNSDumpster
Kostenloser Key nach Registrierung unter https://dnsdumpster.com/ (Free-Tier: 50 Abfragen/Tag). Eintrag in /etc/theHarvester/api-keys.yaml:
dnsdumpster:
key: API-KEY
- Aufruf
- theHarvester -b dnsdumpster -d tuxmen.de
API-Keys eintragen
- Speicherort
- /etc/theHarvester/api-keys.yaml
Die tatsächlich erwartete Struktur immer aus der Datei selbst entnehmen (Format ändert sich je Version):
- cat /etc/theHarvester/api-keys.yaml
Vorschläge für weitere Keys (Free-Tier vorhanden - noch zu entscheiden)
| Quelle | Free-Tier | Liefert | Warum interessant |
|---|---|---|---|
| securityTrails | ja, limitiert | DNS-Historie | deckt alte/vergessene Records und frühere IPs auf |
| hunter | ja, limitiert | E-Mails | namensgebende E-Mail-Funktion, fehlt sonst im Kurs |
| github-code | ja (GitHub-PAT) | Secrets/Configs in Repos | didaktisch stark: Funde von Keys/Configs |
| censys | ja, limitiert | Zertifikate, Subdomains | zweite CT-/Zertifikatsquelle |
| virustotal | ja, limitiert | Subdomains, Relationen | gute Ergänzung zu CT-Logs |
| fullhunt / netlas / onyphe | ja, limitiert | Assets, Ports | Attack-Surface-Sicht |
- Kostenpflichtig / sehr eng limitiert (optional)
- shodan, criminalip, fofa - Ports und Banner, aber kein echter Free-Tier mehr.
TheHarvester Beispiele
Subdomain-Ermittlung über Certificate-Transparency-Logs (crt.sh)
Subdomains aus öffentlichen CT-Logs. Alle öffentlich ausgestellten TLS-Zertifikate müssen in CT-Logs veröffentlicht werden, wodurch sich Hostnamen passiv ermitteln lassen, ohne das Zielsystem zu kontaktieren.
- theHarvester -d tuxmen.de -b crtsh
Passive DNS- und Host-Abfrage über HackerTarget
Schnelle, stark limitierte Abfrage von Hostnamen und IPs. Gut zur Einordnung und als Ergänzung zu CT-Logs.
- theHarvester -d tuxmen.de -b hackertarget
Komplette Recon ohne API-Keys + Ausgabe speichern
Mehrere freie Quellen kombiniert, Ergebnis als JSON/XML.
- theHarvester -d tuxmen.de -b crtsh,certspotter,otx,rapiddns,subdomaincenter,thc,urlscan,hackertarget -f tuxmen-recon
Freie Quellen + DNSDumpster (API-Key)
- theHarvester -d tuxmen.de -b crtsh,certspotter,otx,rapiddns,subdomaincenter,thc,urlscan,hackertarget,dnsdumpster -f tuxmen-recon
Kombinierte Subdomain- und Shodan-Abfrage
Zuerst Hostnamen und IPs ermitteln, dann mit -s die IPs über Shodan um Ports/Dienste anreichern. Shodan-Key erforderlich (https://account.shodan.io/, Abschnitt shodan in api-keys.yaml).
- theHarvester -d tuxmen.de -s -b crtsh,dnsdumpster
Aktive Anreicherung (nur im freigegebenen Scope!)
- DNS-Brute-Force + Auflösung
- theHarvester -d tuxmen.de -b crtsh,otx -c -n
- Virtuelle Hosts prüfen und Screenshots ablegen
- theHarvester -d tuxmen.de -b crtsh,otx -v --screenshot /tmp/shots-tuxmen
- Subdomain-Takeover-Check
- theHarvester -d tuxmen.de -b crtsh -r
Weiterverarbeitung: von theHarvester zu nmap
Die mit -f erzeugte JSON-Datei liefert direkt die IP-Liste für den nmap-Scan (siehe nmap-Artikel).
- IPs extrahieren und an nmap übergeben
jq -r '.ips[]' tuxmen-recon.json | sort -u > tuxmen-ips.txt nmap -iL tuxmen-ips.txt -sV -oA tuxmen-nmap
Aufgaben
(Strukturierte Aufgaben mit Ergebnistabelle folgen - vgl. nmap-Artikel.)
- Untersuche folgende Domains rein passiv:
- heise.de
- suse.de
- redhat.com
- microsoft.com
- stylite.de
- hetzner.de
- kicker.de
- sympatel.de