GitHub: New Open Source Library for OSINT


In the world of information security, people often ask about the study of open sources for obtaining personal information - whether it is the defender (for example, to monitor the perimeter, identify open vulnerabilities) or pentesters (search for entry points, perimeter audits, etc.). Consider one of these sources, hunter.io, which we have optimized with by writing a new library for it. Details and link to github under the cat.

There are many ways to find out confidential information (for example, subdomains or email addresses), as well as tools to find addresses that have ever appeared in the public domain. All methods differ in:

  • presentation method (e.g. cloud-based, on-premise, hybrid),
  • access (web-view, API, etc.),
  • cost (paid, free).

The hunter.io service is a tool for finding corporate email addresses with which you can get contact information for domains. Such information is necessary in order to further check the emails found for compromise, for example, on haveibeenpwned.com .

Hunter.io is able to process and extract the necessary data from 67 million open sources using 5 key methods:

  1. Domain Search: search email by domain or organization name
  2. Email Finder: Search for an individual employee by name and company
  3. Email Verifier: confirmation of the health and relevance of mail
  4. Email Count: allows you to find out the number of email for one domain or for one company
  5. Account Information: manage your personal account (e.g. balance of requests)

To automate the search process and include it in existing services developed in the Go (Golang) programming language, we created the gohunter library, the prototype of which was the pyhunter library ( https://github.com/VonStruddle/PyHunter ), written in Python 3 and using the hunter.io API.

We will not discuss here why we chose Go (Golang) - there are a lot of articles on Habrรฉ - just take this as an axiom.

Initially, we used the pyhunter script ( https://github.com/n4xh4ck5/pyhunter to get information from the command line with hunter.io) that searches email only by domain. Now the library we have written is looking not only by domain, but also by organization name, and also checks email for relevance and points to sources.

Thus, the library is a client for the methods available in the hunter.io service. Such methods call the hunter.io HTTP API (version 2 or v2) and receive a response in JSON format, which is convenient for searching and selecting the necessary information. Do not give thanks.

Links :

1. Sources
2. Description on godoc.org

All Articles