
Обнаруживает активные мутации доменов для предотвращения фишинга и смишинга. Использует список TLD от IANA, валидацию DNS в блокчейне и отчеты о вредоносном ПО через DoH. Выводит отчеты в формате JSON или TXT.
Этот инструмент предоставляет blue teams, SOC's, исследователям и компаниям возможность обнаруживать активные мутации своих доменов, предотвращая использование этих доменов в мошеннических действиях, таких как фишинг и смишинг.
Для этого TypoDetect позволяет использовать последнюю доступную версию TLD (доменов верхнего уровня), опубликованную на сайте IANA, проверку децентрализованных доменов в Blockchain DNS и отчеты о вредоносном ПО в службах DoH (DNS over HTTPS).
Для удобства пользователя TypoDetect предоставляет отчет в формате JSON по умолчанию или в формате TXT, в зависимости от выбора пользователя, и отображает на экране сводку сгенерированных мутаций, активных доменов и отчетов, обнаруженных с вредоносным ПО или децентрализованными доменами.
Клонируйте этот репозиторий:
git clone https://github.com/Telefonica/typodetect
Запустите установку:
python3 pip install -r requirements.txt
Внутри директории 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)
Для простого анализа:
python3 typodetect.py <domain>
Для обновления базы IANA и анализа:
python3 typodetect.py -u y <domain>
Для анализа с большим количеством потоков:
python3 typodetect.py -t <number of threads> <domain>
Для другого DoH (в настоящее время доступны только ElevenPaths или Cloudfare):
python3 typodetect.py -d 2 <domain>
Для создания отчета в формате TXT:
python3 typodetect.py -o TXT <domain>
Внутри директории reports файл отчета сохраняется, по умолчанию в JSON, с именем анализируемого домена и датой, например:
elevenpaths.com2021-01-26T18:20:10.34568.json
Отчет JSON имеет следующую структуру для каждой обнаруженной активной мутации:
{ id:
"report_DoH" : <string>
"domain": <string>
"A": [ip1, ip2, ...]
"MX": [mx1, mx2, ...]
}
Поля содержат следующую информацию:
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.