
Detecta mutaciones de dominios activos para prevenir phishing y smishing. Utiliza TLDs de IANA, validación DNS blockchain e informes de malware DoH. Genera informes en JSON o TXT.
Esta herramienta proporciona a los equipos azules, SOC, investigadores y empresas la capacidad de detectar las mutaciones activas de sus dominios, evitando así el uso de estos dominios en actividades fraudulentas, como phishing y smishing.
Para ello, Typodetect permite utilizar la versión más reciente disponible de los TLDs (Dominios de Nivel Superior) publicados en el sitio web de IANA, la validación de dominios descentralizados en Blockchain DNS y los informes de malware en servicios DoH (DNS sobre HTTPS).
Para comodidad del usuario, Typodetect entrega el informe en formato JSON por defecto, o en formato TXT, dependiendo de cómo el usuario lo seleccione, y muestra en pantalla un resumen de las mutaciones generadas, los dominios activos y los informes detectados con Malware o dominios descentralizados.
Clone este repositorio con:
git clone https://github.com/Telefonica/typodetect
Ejecute la configuración para la instalación:
python3 pip install -r requirements.txt
Dentro del directorio de 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)
Para un análisis simple:
python3 typodetect.py <domain>
Para actualizar la base de datos IANA y analizar:
python3 typodetect.py -u y <domain>
Para análisis con más hilos:
python3 typodetect.py -t <number of threads> <domain>
Para un DoH diferente (actualmente solo tiene ElevenPaths o CloudFare)
python3 typodetect.py -d 2 <domain>
Para crear informe TXT
python3 typodetect.py -o TXT <domain>
Dentro del directorio de informes, el archivo de informe se guarda, por defecto en JSON, con el nombre del dominio analizado y la fecha, por ejemplo:
elevenpaths.com2021-01-26T18:20:10.34568.json
El informe JSON tiene la siguiente estructura para cada mutación activa detectada:
{ id:
"report_DoH" : <string>
"domain": <string>
"A": [ip1, ip2, ...]
"MX": [mx1, mx2, ...]
}
Los campos contienen la siguiente información:
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.