
Rileva mutazioni attive di dominio per prevenire phishing e smishing. Utilizza TLD IANA, validazione DNS blockchain e report malware DoH. Produce report in formato JSON o TXT.
Questo strumento fornisce ai blue team, SOC, ricercatori e aziende la capacità di rilevare le mutazioni attive dei propri domini, prevenendo così l'utilizzo di questi domini in attività fraudolente, come phishing e smishing.
Per questo, TypoDetect permette l'uso dell'ultima versione disponibile dei TLD (Top Level Domains) pubblicati sul sito IANA, la validazione dei domini decentralizzati in Blockchain DNS e i report malware nei servizi DoH (DNS over HTTPS).
Per comodità dell'utente, TypoDetect fornisce il report in formato JSON per impostazione predefinita, o in formato TXT, a seconda di come l'utente seleziona e mostra a schermo un riepilogo delle mutazioni generate, dei domini attivi e dei report rilevati con Malware o domini decentralizzati.
Clona questo repository con:
git clone https://github.com/Telefonica/typodetect
Esegui il setup per l'installazione:
python3 pip install -r requirements.txt
All'interno della directory TypoDetect:
python3 typodetect.py -h
usage: typodetect.py [-h] [-u UPDATE] [-t N_THREADS] [-d DOH_SERVER] [-o OUTPUT] domain
positional arguments:
domain specify domain to process
optional arguments:
-h, --help show this help message and exit
-u UPDATE, --update UPDATE
(Y/N) for update TLD's database (default:N)
-t N_THREADS, --threads N_THREADS
Number of threads for processing (default:5)
-d DOH_SERVER, --doh DOH_SERVER
Section DoH for use: [1] ElevenPaths (default) [2] Cloudfare
-o OUTPUT, --output OUTPUT
JSON or TXT, options of filetype (default:JSON)
Per un'analisi semplice:
python3 typodetect.py <domain>
Per aggiornare il database IANA e analisi:
python3 typodetect.py -u y <domain>
Per un'analisi con più thread:
python3 typodetect.py -t <number of threads> <domain>
Per un DoH diverso (attualmente ha solo ElevenPaths o CloudFare)
python3 typodetect.py -d 2 <domain>
Per creare un report TXT
python3 typodetect.py -o TXT <domain>
All'interno della directory reports, il file del report viene salvato, per impostazione predefinita in JSON, con il nome del dominio analizzato e la data, ad esempio:
elevenpaths.com2021-01-26T18:20:10.34568.json
Il report JSON ha la seguente struttura per ogni mutazione attiva rilevata:
{ id:
"report_DoH" : <string>
"domain": <string>
"A": [ip1, ip2, ...]
"MX": [mx1, mx2, ...]
}
I campi contengono le seguenti informazioni:
id: Integer id of mutation
"report_DoH": "" - Domain of Descentralised DNS
"Malware" - Domain reported as dangerous for DoH
"Good" - Domain reported as good for DoH
"domain": Mutation detected as active.
"A": IP's address of A type in DNS of the mutation.
"MX": IP's or CNAME of MX type in DNS of the mutation.