
uno strumento di threat intelligence e risposta a costo zero contro i domini di phishing
Il tool Jeopardize è sviluppato per fornire capacità di base di threat intelligence e risposta contro i domini di phishing al costo minimo possibile. Rileva candidati a domini di phishing registrati (typosquatting, omografi, ecc.), li analizza e assegna loro un punteggio di rischio. Dopo di che, invia credenziali apparentemente valide ai moduli di login su quei siti di phishing.
Perché? Immagina questo scenario: un attaccante registra un dominio di phishing, acmebnak.com (typosquatting di acmebank), copia il modulo di login originale di acmebank.com lì e pubblicizza questo dominio tramite tweet sponsorizzati. Questo annuncio e il dominio probabilmente verranno segnalati come phishing il giorno successivo, ma l'attaccante ha già raccolto credenziali dagli utenti. Rimuoverlo dopo non aiuterà gli utenti colpiti. Jeopardize fornisce una soluzione proattiva a questo problema. Compromette il modulo di phishing con credenziali apparentemente valide per confondere l'attaccante. Questo darà alle organizzazioni un po' di tempo per prendere precauzioni.
ATTACKER+-----advertises+
| +---------------+
| | |
+--------v-------+ +----------------+ | |
|twitter.com/ads | |acmebnak.com | | 549233/ahs72 +------>FAKE
+----------------+ +----------------+ | |
| | | | | 398273/pass1 +------>FAKE
| AcmeBank +-->+ username: +-------+ |
| Tax Refunds | | password: | | 393823/sm283 +------>LEGIT
| | | | | |
+--------^-------+ +----------------+ | 394837/azerb +------>FAKE
| ^ | |
VICTIM USER+-----clicks-+ |sends | |
|fake creds +---------------+
+
JEOPARDIZE
Jeopardize genera diverse combinazioni di parole con un dato dominio. (dnstwist aiuta qui) Ad esempio, se il dominio dato è acmebank.com, le combinazioni sarebbero acmebnak, acmeban, amcebank, ecc. Se il tuo dominio ha un nome corto o generico (ad esempio: aa.com) Questo strumento non ti aiuterà. Funziona meglio per nomi unici.
Jeopardize ha due diversi metodi di rilevamento per identificare i domini registrati:
Brute: Jeopardize combina le parole generate (acmebnak, amcebank, ecc.) con tutti i TLD (com, net, xyz, live, ecc.) ed esegue una query whois per tutti. Pro: Non richiede alcuna chiave API, completamente gratuito. / Contro: Richiede molto tempo.
Daily: Con la chiave API di Zonefiles.io fornita, Jeopardize raccoglie tutti i domini registrati nelle ultime 24 ore e li cerca per le parole generate (acmebnak, amcebank, ecc.). Pro: Veloce, può essere facilmente utilizzato come intelligence sulle minacce quotidiana. Contro: Richiede una chiave API di Zonefiles.io (edizione Pro)
I domini rilevati sono già sospetti. Ma ci sono fattori che aumentano la probabilità che siano domini di phishing. Inoltre, dobbiamo analizzare se una pagina di phishing è installata su quel dominio in modo da poter agire contro di essa. Jeopardize controlla i seguenti elementi dei domini registrati:
Se il punteggio di phishing è alto e il sito web ha un modulo di login, Jeopardize lo compilerà automaticamente con la lista di nomi utente/password fornita.
Salva le informazioni dei domini di phishing rilevati in un file XML. Ad esempio:
<domain>
<address>acmebnak.com</address>
<name_servers>ns1.cloudflare.com ns2.cloudflare.com</name_servers>
<mx_servers> </mx_servers>
<date_flag>True</date_flag>
<alexa_flag>False</alexa_flag>
<webserver_flag>True</webserver_flag>
<certificate_flag>False</certificate_flag>
<form_flag>True</form_flag>
<phishing_score>85</phishing_score>
</domain>
Jeopardize richiede Python3 per funzionare ed è testato su macOS, Ubuntu 18.04 e sistemi Linux basati su Debian. Prima, clona il repository:
git clone https://github.com/utkusen/jeopardize.git
Entra nella cartella
cd jeopardize
Installa le librerie richieste
pip3 install -r requirements.txt
Devi anche installare chromedriver per selenium (Richiesto per la compilazione dei moduli. Se non lo userai, non è necessario installarlo)
su Ubuntu: Esegui sudo apt install chromium-chromedriver
su Kali (basato su Debian): Esegui pip3 install chromedriver-binary
su macOS: Esegui brew cask install chromedriver
Se vuoi integrare l'API di Zonefiles.io, apri jeopardize.py con un editor di testo, sostituisci ZONEFILES_API_KEY = "" con la tua chiave.
Sei pronto per partire!
Nota per utenti macOS: Sembra che macOS limiti il multithreading come meccanismo di sicurezza. Devi eseguire il seguente comando prima di eseguire lo strumento: export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES per maggiori informazioni su questo problema, controlla qui
Devi fornire il tuo dominio per il controllo di phishing con il parametro --domain. Devi anche fornire --type (brute, daily, incremental) come metodo di rilevamento dei domini registrati.
Comando di esempio: python3 jeopardize.py --domain facebook.com --type brute
Cosa fa?: Combina le combinazioni di parole di facebook (fcabook, facebkook, ecc.) con tutti i TLD (com, net, org, xyz) ed esegue una query whois per tutti. I risultati verranno salvati nel file facebook.com.xml. Questo non compila i moduli di login dei domini rilevati.
Comando di esempio: python3 jeopardize.py --domain facebook.com --type daily
Cosa fa?: Raccoglie tutti i domini registrati nelle ultime 24 ore tramite l'API di Zonefiles.io e li cerca per le parole generate (fcabook, facebkook, ecc.)
Comando di esempio: python3 jeopardize.py --domain facebook.com --type incremental
Cosa fa?: Prende un file XML generato in precedenza (facebook.com.xml), raccoglie i domini al suo interno e aggiorna i loro dati, inoltre esegue una scansione giornaliera regolare.
Se vuoi compilare i moduli di login dei domini di phishing rilevati, fornisci una lista di nomi utente con -U e una lista di password con -P
Comando di esempio: python3 jeopardize.py --domain facebook.com --type daily -U user.txt -P pass.txt
Se vuoi attivare la modalità verbose, aggiungi -v alla fine del comando.