une boîte à outils OSINT passive en python pour les noms d'utilisateur, e-mails, domaines, IP, téléphones, hachages. sans clés, sans connexion.
boîte à outils osint passive en python. pas de clés api, pas de comptes, pas de connexion à quoi que ce soit. donnez-lui un pseudo, un email, un domaine, une ip, un numéro de téléphone ou un hash et il parcourt ce qui est déjà public.

username balaie un pseudo sur environ 700 sites, en utilisant la liste communautaire WhatsMyName. chaque entrée de cette liste sait distinguer un résultat positif d'un négatif, donc les résultats ne sont pas des suppositions. email vérifie la syntaxe et le mx, cherche les domaines jetables, tente gravatar, puis fait passer la partie avant le @ dans le balayage de pseudos. domain récupère les enregistrements dns, le statut et le titre http, les sous-domaines via certificate transparency et whois. ip donne la géo et l'asn, le reverse dns, et scanne les ports si vous le demandez. phone donne l'opérateur, la région, le type de ligne et le fuseau horaire. hash vous dit juste ce que c'est probablement.
tout est données publiques. dns, whois, pages de profil, journaux de certificats.
nécessite python 3.9 ou plus récent. ensuite :
pip install -r requirements.txt
cela vous installe rich, requests, dnspython et aiohttp. phonenumbers est aussi inclus mais seul le module phone l'utilise, donc vous pouvez le retirer du fichier si vous voulez. sans aiohttp le balayage de pseudos bascule sur des threads et devient beaucoup plus lent, donc gardez-le.
sous windows, si python n'est pas encore dans votre path :
winget install --id Python.Python.3.13 -e
git clone https://gitlab.com/vqkro/higernes
cd higernes
pip install -r requirements.txt
python higernes.py
linux et mac c'est la même chose avec python3 à la place :
git clone https://gitlab.com/vqkro/higernes
cd higernes
python3 -m pip install -r requirements.txt
python3 higernes.py
sous freebsd faites d'abord pkg install -y python3.
si pip se plaint d'un environnement géré de l'extérieur, soit créez un venv
python3 -m venv .venv && . .venv/bin/activate && pip install -r requirements.txt
soit passez --break-system-packages et continuez.
sans arguments vous obtenez le menu. ou attaquez directement quelque chose :
python higernes.py username vqkro
python higernes.py username vqkro --cat coding
python higernes.py email [email protected]
python higernes.py domain example.com
python higernes.py ip 1.1.1.1 --ports
python higernes.py phone +14155552671
python higernes.py hash 5f4dcc3b5aa765d61d8327deb882cf99
python higernes.py scan example.com
python higernes.py scan example.com --all
une catégorie ne fait que restreindre le balayage de pseudos. laissez-la de côté et il parcourt les 700.
data/wmn-data.json est le jeu de données WhatsMyName. remplacez-le par une copie plus récente à tout moment, il est lu au démarrage. si le fichier n'est pas là il bascule sur une courte liste intégrée au script pour que tout fonctionne quand même.
le scanner de ports en python est lent, donc cette partie vit dans core/hcore.cpp et se compile en un petit binaire. higernes le cherche à côté de lui-même, dans core/, ou dans le path, et l'exécute. s'il n'est pas là, ip --ports bascule sur la version python plus lente. vous n'avez besoin de le compiler que si vous exécutez depuis les sources et voulez le chemin rapide :
# windows
g++ -O2 -std=c++17 -static -o core/hcore.exe core/hcore.cpp -lws2_32
# linux / mac
g++ -O2 -std=c++17 -o core/hcore core/hcore.cpp -pthread
il fonctionne aussi tout seul :
hcore dns github.com
hcore ports example.com --banners
hcore ports example.com --all --threads 1024
l'exe sur la page des releases l'a déjà à l'intérieur.
dnspython et requests valent la peine d'être installés. sans dnspython seul l'enregistrement A se résout, tout le reste est simplement ignoré. le point d'accès gratuit d'ip-api limite à environ 45 requêtes par minute. crt.sh est lent ou indisponible la moitié du temps, et quand c'est le cas le scan de domaine le signale et continue.
pip install pyinstaller
pyinstaller --onefile --name higernes --console higernes.py
c'est ainsi que celui de la page des releases a été construit.
MIT, voir LICENSE.