
um kit de ferramentas OSINT passivo em python - nomes de usuário, e-mails, domínios, ips, telefones, hashes. sem chaves, sem logins.
Um kit de ferramentas OSINT passivo em Python. Sem chaves de API, sem contas, sem registo em qualquer lugar. Aponta-o para um handle, um email, um domínio, um IP, um número de telefone ou um hash e ele escava através do que já é público.

Seis módulos, todos a ler endpoints públicos:
| Módulo | O que obtém |
|---|---|
username | varre um handle por ~700 sites (o conjunto de dados WhatsMyName), atualizando em tempo real à medida que os resultados chegam |
email | sintaxe, MX, verificação de descartável, gravatar, depois a parte antes do @ como username |
domain | A/AAAA/MX/NS/TXT/CNAME, estado http e título, subdomínios de certificate transparency, whois |
ip | geo + ASN, dns reverso, varrimento opcional de portas comuns |
phone | validade, operadora, região, tipo de linha, fuso horário |
hash | identificação de comprimento/conjunto de caracteres |
scan | varrimento rápido de portas TCP com captura de banner, alimentado pelo núcleo C++ |
Nada aqui toca em nada privado. É tudo DNS, WHOIS, endpoints de perfis públicos e registos de certificados.
O varrimento de usernames funciona com data/wmn-data.json - o conjunto de dados comunitário
WhatsMyName, ~700 sites
com uma regra de verificação cada (código de estado mais uma string que deve, e não deve, estar
presente). Substitua por uma cópia mais recente a qualquer momento colocando-a sobre o ficheiro; a ferramenta
lê-o no arranque. Se estiver em falta, recorre a uma pequena lista incorporada.
Restrinja um varrimento com --cat:
python higernes.py username vqkro --cat social
python higernes.py username vqkro --cat gaming
Execute-o sem --cat e ele atinge tudo.
O scanner de portas é demasiado lento em Python, por isso o trabalho pesado vive em core/hcore.cpp
higernes.py procura-o ao seu lado (ou em
core/, ou no PATH) e invoca-o; se não estiver lá, o varrimento ip --ports
recorre silenciosamente à versão mais lenta em Python puro.Compile-o (só é necessário se estiver a executar a partir do código-fonte e quiser o caminho rápido):
# windows (mingw g++)
g++ -O2 -std=c++17 -static -o core/hcore.exe core/hcore.cpp -lws2_32
# linux / macOS
g++ -O2 -std=c++17 -o core/hcore core/hcore.cpp -pthread
Execute-o diretamente se quiser:
hcore dns github.com
hcore ports example.com --banners
hcore ports example.com --all --threads 1024
O .exe pré-compilado na página de Releases já tem o núcleo incorporado.
Requer Python 3.9 ou mais recente.
Qualquer SO
pip install -r requirements.txt
Isso instala rich, requests, dnspython e aiohttp. phonenumbers também está
lá, mas apenas o módulo phone precisa dele - remova-o do ficheiro e o
resto continua a funcionar. Sem aiohttp, o varrimento de usernames recorre a threads,
o que é muito mais lento (dezenas de segundos contra centenas).
Windows (PowerShell, se python ainda não estiver no PATH)
winget install --id Python.Python.3.13 -e
git clone https://gitlab.com/jankoboy88/higernes
cd higernes
pip install -r requirements.txt
python higernes.py
Linux / macOS
git clone https://gitlab.com/jankoboy88/higernes
cd higernes
python3 -m pip install -r requirements.txt
python3 higernes.py
FreeBSD
pkg install -y python3
git clone https://gitlab.com/jankoboy88/higernes
cd higernes
python3 -m pip install -r requirements.txt
Se o pip se queixar de um ambiente gerido externamente, use um venv:
python3 -m venv .venv && . .venv/bin/activate && pip install -r requirements.txt
ou passe --break-system-packages.
Execute-o sem argumentos e obtém o menu. Ou vá diretamente a um módulo:
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
O ecrã é todo spinners em tempo real e tabelas coloridas; o logótipo desenha-se a si próprio no arranque.
dnspython e requests são fortemente recomendados. Sem dnspython, apenas
o registo A é resolvido (usando a stdlib) e todos os outros tipos de registo são
ignorados.Sem Python na máquina de destino? Empacote-o:
pip install pyinstaller
pyinstaller --onefile --name higernes --console higernes.py
# -> dist/higernes.exe
É assim que o binário na página de Releases é feito. Nada mais a configurar.
MIT. Ver LICENSE.