GitHub: nouvelle bibliothèque Open Source pour OSINT


Dans le monde de la sécurité de l'information, les gens posent souvent des questions sur l'étude des sources ouvertes pour obtenir des informations personnelles - que ce soit le défenseur (par exemple, pour surveiller le périmètre, identifier les vulnérabilités ouvertes) ou les pentesters (rechercher des points d'entrée, des audits de périmètre, etc.). Considérez une de ces sources, hunter.io, avec laquelle nous avons optimisé en écrivant une nouvelle bibliothèque pour lui. Détails et lien vers github sous le chat.

Il existe de nombreuses façons de trouver des informations confidentielles (par exemple, des sous-domaines ou des adresses e-mail), ainsi que des outils pour trouver des adresses qui sont déjà apparues dans le domaine public. Toutes les méthodes diffèrent par:

  • méthode de présentation (par exemple, basée sur le cloud, sur site, hybride),
  • accès (web-view, API, etc.),
  • coût (payé, gratuit).

Le service hunter.io est un outil pour trouver des adresses e-mail d'entreprise avec lesquelles vous pouvez obtenir les coordonnées des domaines. Ces informations sont nécessaires pour vérifier plus en détail les e-mails trouvés, par exemple sur haveibeenpwned.com .

Hunter.io est capable de traiter et d'extraire les données nécessaires de 67 millions de sources ouvertes en utilisant 5 méthodes clés:

  1. Recherche de domaine: recherchez des e-mails par nom de domaine ou d'organisation
  2. Recherche d'e-mails: recherchez un employé individuel par nom et société
  3. Email Verifier: confirmation de la santé et de la pertinence du courrier
  4. Nombre d'e-mails: permet de connaître le nombre d'e-mails pour un domaine ou pour une entreprise
  5. Informations sur le compte: gérez votre compte personnel (par exemple, solde des demandes)

Pour automatiser le processus de recherche et l'inclure dans les services existants développés dans le langage de programmation Go (Golang), nous avons créé la bibliothèque gohunter, dont le prototype était la bibliothèque pyhunter ( https://github.com/VonStruddle/PyHunter ), écrite en Python 3 et en utilisant l'API hunter.io.

Nous ne discuterons pas ici pourquoi nous avons choisi Go (Golang) - il y a beaucoup d'articles sur Habré - prenez simplement cela comme un axiome.

Au départ, nous avons utilisé le script pyhunter ( https://github.com/n4xh4ck5/pyhunter pour obtenir des informations à partir de la ligne de commande avec hunter.io) qui recherche les e-mails uniquement par domaine. Maintenant, la bibliothèque que nous avons écrite recherche non seulement le domaine, mais aussi le nom de l'organisation, et vérifie également la pertinence des e-mails et pointe vers les sources.

Ainsi, la bibliothèque est un client pour les méthodes disponibles dans le service hunter.io. Ces méthodes appellent l'API HTTP hunter.io (version 2 ou v2) et reçoivent une réponse au format JSON, ce qui est pratique pour rechercher et sélectionner les informations nécessaires. Ne rends pas grâce.

Liens :

1. Sources
2. Description sur godoc.org

All Articles