
Detecta mutações ativas de domínio para prevenir phishing e smishing. Usa TLDs da IANA, validação DNS em blockchain e relatórios de malware DoH. Gera relatórios em JSON ou TXT.
Esta ferramenta fornece às equipas azuis, SOCs, investigadores e empresas a capacidade de detetar as mutações ativas dos seus domínios, prevenindo assim a utilização destes domínios em atividades fraudulentas, como phishing e smishing.
Para isso, o Typodetect permite usar a versão mais recente disponível dos TLDs (Domínios de Topo) publicados no site da IANA, a validação de domínios descentralizados no DNS Blockchain e os relatórios de malware em serviços DoH (DNS sobre HTTPS).
Para facilitar a vida do utilizador, o Typodetect entrega o relatório no formato JSON por defeito, ou em formato TXT, dependendo da seleção do utilizador, e mostra no ecrã um resumo das mutações geradas, dos domínios ativos e dos relatórios detetados com Malware ou domínios descentralizados.
Clone este repositório com:
git clone https://github.com/Telefonica/typodetect
Execute a configuração para instalação:
python3 pip install -r requirements.txt
Dentro do diretório 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 uma análise simples:
python3 typodetect.py <dominio>
Para atualizar a base de dados da IANA e análise:
python3 typodetect.py -u y <dominio>
Para análise com mais threads:
python3 typodetect.py -t <numero de threads> <dominio>
Para um DoH diferente (atualmente apenas tem ElevenPaths ou CloudFlare)
python3 typodetect.py -d 2 <dominio>
Para criar relatório TXT
python3 typodetect.py -o TXT <dominio>
Dentro do diretório de relatórios, o ficheiro de relatório é guardado, por defeito em JSON, com o nome do domínio analisado e a data, por exemplo:
elevenpaths.com2021-01-26T18:20:10.34568.json
O relatório JSON tem a seguinte estrutura para cada mutação ativa detetada:
{ id:
"report_DoH" : <string>
"domain": <string>
"A": [ip1, ip2, ...]
"MX": [mx1, mx2, ...]
}
Os campos contêm as seguintes informações:
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.