un toolkit OSINT passivo in python e c++ per username, email, domini, IP, telefoni, hash. nessuna chiave, nessun login.
toolkit osint passivo in python. nessuna chiave api, nessun account, nessun login da nessuna parte. gli dai un handle, un'email, un dominio, un ip, un numero di telefono o un hash e passa in rassegna ciò che è già pubblico.

username passa un handle attraverso circa 700 siti, usando la lista comunitaria WhatsMyName. ogni voce di quella lista sa come distinguere un riscontro da un'assenza, quindi i risultati non sono supposizioni. email ti dice dove l'indirizzo è effettivamente registrato - firefox, x, spotify e duolingo al momento, più gravatar - ne estrae la cronologia delle violazioni da xposedornot (nomi delle violazioni, date, numero di record e cosa è trapelato), poi passa la parte prima della @ attraverso la ricerca degli username. domain estrae i record dns, lo stato http e il titolo, i sottodomini dalla certificate transparency e il whois. ip fornisce geo e asn, reverse dns, e scansiona le porte se glielo chiedi. phone fa carrier, regione, tipo di linea e fuso orario. hash ti dice solo cosa probabilmente è.
sono tutti dati pubblici. dns, whois, pagine di profilo, log dei certificati.
c'è dell'altro oltre ai sei moduli principali. discord ti dice se un username è occupato, e recupera un profilo se gli passi un id utente. github, roblox e steam cercano profili. tls estrae il certificato di un host. headers mostra quali header di sicurezza mancano a un sito. proxies raccoglie liste pubbliche di proxy e le verifica, scrivendo quelli attivi in proxies/working.txt.
python higernes.py proxies
raccoglie diciassette liste pubbliche, le verifica tutte insieme e tiene quelle che rispondono, dalla più veloce, con una barra live che mostra il conteggio e una frequenza al secondo. 142k candidati ridotti a quelli buoni in circa due minuti e mezzo. passa --thorough per attendere più a lungo quelli lenti e conservarne di più. qualsiasi cosa che accetti un file di proxy ricadrà su proxies/working.txt se non gliene passi uno, quindi dcheck li prende da solo una volta che hai eseguito questo.
richiede python 3.9 o superiore. poi:
pip install -r requirements.txt
questo ti dà rich, requests, dnspython e aiohttp. phonenumbers arriva anch'esso ma solo il modulo phone lo usa, quindi puoi toglierlo dal file se vuoi. senza aiohttp la ricerca degli username ricade sui thread e diventa molto più lenta, quindi tienilo.
su windows, se python non è ancora nel tuo 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 e mac sono la stessa cosa con python3 invece:
git clone https://gitlab.com/vqkro/higernes
cd higernes
python3 -m pip install -r requirements.txt
python3 higernes.py
su freebsd esegui prima pkg install -y python3.
se pip si lamenta di un ambiente gestito esternamente, crea un venv
python3 -m venv .venv && . .venv/bin/activate && pip install -r requirements.txt
oppure passa --break-system-packages e vai avanti.
senza argomenti ottieni il menu. oppure vai diretto su qualcosa:
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
python higernes.py subs example.com
python higernes.py subs example.com --wordlist names.txt
python higernes.py sweep 192.168.1.0/24 --port 80
python higernes.py revdns 8.8.8.8
python higernes.py whois example.com
python higernes.py http example.com
python higernes.py discord vqkro
python higernes.py discord 80351110224678912
python higernes.py github torvalds
python higernes.py roblox builderman
python higernes.py steam gabe
python higernes.py tls example.com
python higernes.py headers example.com
una categoria restringe solo la ricerca degli username. lasciala fuori e colpisce tutti i 700.
domain fa tutto in un colpo: record dns, http, sottodomini dalla trasparenza dei certificati più un brute pass sui nomi comuni, e whois.
data/wmn-data.json è il dataset di WhatsMyName. puoi sostituirlo con una copia più recente in qualsiasi momento, viene letto all'avvio. se il file non c'è ricade su una lista breve incorporata nello script così tutto funziona comunque.
lo scanner di porte in python è lento, quindi quella parte vive in core/hcore.cpp e compila in un piccolo binario. higernes lo cerca accanto a sé, in core/, o nel path, e lo invoca. se non c'è, ip --ports ricade sulla versione python più lenta. devi compilarlo solo se esegui dal sorgente e vuoi il percorso veloce:
# 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
funziona anche da solo:
hcore dns github.com
hcore revdns 8.8.8.8
hcore whois example.com
hcore subs example.com --threads 96
hcore sweep 192.168.1.0/24 --port 80
hcore http example.com --path /
hcore ports example.com --banners
hcore ports example.com --all --threads 1024
copre dns, reverse dns, whois sulla porta 43, brute force dei sottodomini, uno sweep di subnet e un semplice fetch http. niente tls lì dentro, quindi http è la porta 80 o qualsiasi cosa gli punti.
l'exe sulla pagina delle release lo contiene già.
core/dcheck.cpp è il checker massivo di username discord. fa richieste allo stesso
endpoint di disponibilità usato dalla pagina di registrazione, da tutti i thread che gli dai,
opzionalmente tramite i tuoi proxy.
dcheck --mode single --value somechosen
dcheck --mode ogu
dcheck --mode 4l --limit 5000 --threads 64
dcheck --mode 5c --threads 128 --proxies proxies.txt --out free.txt
dcheck --mode 4l --proxies proxies.txt --webhook https://discord.com/api/webhooks/...
con --webhook ogni nome libero viene inviato a quell'url nel momento in cui viene trovato, così puoi lasciarlo in esecuzione e guardare un canale invece della console. le corrispondenze vengono stampate man mano, i liberi in verde e gli occupati in rosso; passa --only-free se preferisci non vedere scorrere quelli occupati.
le modalità sono 4c e 4l (ogni combinazione di 4 caratteri / 4 lettere), 5l e 5c per
cinque, ogu per qualche centinaio di nomi brevi a parola, e single o list quando
vuoi dargli un singolo nome o un file.
discord applica rate limit severi per ip. senza proxy otterrai una parete di 429 e la riga di riepilogo te lo dirà. è colpa loro, non del checker.
è incapsulato anche lato python:
python higernes.py dcheck 4l --limit 500 --threads 64 --proxies proxies.txt
compilalo con winhttp (solo windows):
g++ -O2 -std=c++17 -static -o core/dcheck.exe core/dcheck.cpp -lwinhttp
dnspython e requests vale la pena averli. senza dnspython si risolve solo il record A, tutto il resto viene semplicemente saltato. l'endpoint gratuito di ip-api limita a circa 45 lookup al minuto. crt.sh è lento o giù metà delle volte, e quando lo è la scansione del dominio lo segnala e va avanti.
pip install pyinstaller
pyinstaller --onefile --name higernes --console higernes.py
è così che è stato creato quello sulla pagina delle release.
c'è un secondo script, deadman.py, che sorveglia una chiavetta usb e scatta quando viene estratta. scegli l'unità, scegli cosa succede.