TheHarvester

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche
Fiche express
Nom theHarvester
Type Collecte OSINT (e-mails, sous-domaines, hôtes)
Auteur Christian Martorella (Edge-Security)
Voir aussi Recon-ng · Maltego · script historique

theHarvester est un outil de reconnaissance OSINT qui collecte, à partir de sources publiques, des adresses e-mail, sous-domaines, noms d'hôtes et adresses IP associés à un domaine cible. C'est l'un des outils les plus utilisés en toute première phase d'un test d'intrusion, avant tout contact actif avec la cible : il ne fait qu'interroger des services tiers (moteurs de recherche, bases de certificats, etc.), sans jamais toucher directement l'infrastructure visée.

L'outil a beaucoup évolué depuis sa version d'origine (voir TheHarverster.py pour le script historique en Python 2, qui n'interrogeait que deux moteurs de recherche par expression régulière) : la version actuelle est réécrite en Python 3, multi-sources, et intégrée par défaut dans Kali Linux.

Installation

# Kali Linux : préinstallé, sinon
apt install theharvester

# Depuis les sources
git clone https://github.com/laramies/theHarvester.git
cd theHarvester
pip install -r requirements/base.txt

Sources

theHarvester agrège des résultats depuis de nombreuses sources, notamment (liste non exhaustive, à vérifier selon la version) :

  • Moteurs de recherche généralistes : Google, Bing, DuckDuckGo, Yahoo, Baidu.
  • Bases de certificats TLS : crt.sh (Certificate Transparency), très efficace pour l'énumération de sous-domaines.
  • Moteurs orientés sécurité : Shodan, VirusTotal, SecurityTrails, HackerTarget.
  • Réseaux professionnels : LinkedIn (collecte de noms d'employés).

Certaines sources nécessitent une clé API (Shodan, VirusTotal, SecurityTrails…) à configurer dans le fichier api-keys.yaml de l'outil.

Utilisation

# Recherche simple via Google
theHarvester -d domaine-cible.tld -b google

# Toutes les sources disponibles, limité à 500 résultats
theHarvester -d domaine-cible.tld -b all -l 500

# Sous-domaines via la transparence des certificats
theHarvester -d domaine-cible.tld -b crtsh

# Export des résultats
theHarvester -d domaine-cible.tld -b all -f resultats.html

Principales options : -d (domaine cible), -b (source ou all), -l (limite de résultats), -f (fichier de sortie HTML/JSON), -s (décalage pour paginer), -v (vérification DNS des hôtes trouvés, plus bruyante côté cible).

Résultats

  • Adresses e-mail liées au domaine.
  • Sous-domaines et noms d'hôtes.
  • Adresses IP associées.
  • Selon les sources activées : noms d'employés, URLs, bannières de services exposés (via Shodan).

Limites

  • Dépend entièrement de la disponibilité et des quotas des services tiers interrogés (rate-limiting, blocage de scraping par les moteurs de recherche, clés API expirées).
  • Les résultats sont déclaratifs et doivent être recoupés (faux positifs, sous-domaines historiques non résolus).
  • Le mode -v (résolution DNS active) touche l'infrastructure cible et doit être autorisé par le périmètre de la mission ; le mode par défaut reste passif.

Points clés à retenir

  • theHarvester automatise la collecte OSINT (emails, sous-domaines, hôtes) depuis des sources publiques, en reconnaissance passive.
  • Multi-sources : moteurs de recherche, transparence des certificats (crt.sh), Shodan, VirusTotal, LinkedIn…
  • Intégré par défaut dans Kali Linux ; certaines sources nécessitent une clé API.
  • Complémentaire de Recon-ng (framework plus large) et Maltego (visualisation graphique des relations OSINT).

Voir aussi