
Сканирует DNS MX-записи для выявления неправильно настроенных, истекающих или незарегистрированных доменов, уязвимых для перехвата электронной почты, с автоматической поддержкой восстановления для Mailgun.
Как это работает • Возможности • Установка • Использование • Запуск mx-takeover
mx-takeover фокусируется на DNS MX-записях и обнаруживает неправильно настроенные MX-записи. В настоящее время поддерживает три метода. А именно:
Ограничение
Mailgun использует MX-записи для получения почты, TXT-записи для отправки и CNAME-запись для отслеживания. Из этих записей только DKIM-запись уникальна и генерируется случайным образом.
Поэтому отправлять письма от чужого имени невозможно, но можно читать (получать) письма, отправленные другими на связанный домен.
mx-takeover требует go1.17 для успешной установки. Выполните следующую команду для установки.
go install -v github.com/musana/mx-takeover@latest
mx-takeover -h
Будет показана справка по инструменту.
┌──(root㉿kali)-[/home/mx-takeover]
└─# mx-takeover -h
_ _
_ __ ___ __ __ | |_ __ _| | _____ _____ _____ _ __
| '_ ' _ \\ \/ /____| __/ _' | |/ / _ \/ _ \ \ / / _ \ '__|
| | | | | |> <_____| || (_| | < __/ (_) \ V / __/ |
|_| |_| |_/_/\_\ \__\__,_|_|\_\___|\___/ \_/ \___|_|
hunting misconfigured MX records
musana.net | @musana
-check-whois
Проверить whois для обнаружения незарегистрированных MX-доменов или доменов с истекающим сроком
-expire-day int
Предполагаемое количество дней до истечения (по умолчанию 30)
-h справка
-mailgun-api string
API Mailgun для автоматического перехвата домена
-output string
Сохранить вывод в файл в формате json
-show-only-mx
Показывать только домены, имеющие MX-записи
-v Выводить все логи
-w int
Количество рабочих потоков (по умолчанию 32)
Текстовый файл должен быть построчным.
Каждый домен в текстовом файле должен начинаться с http:// или https://
┌──(root㉿kali)-[/home/mx-takeover]
└─# cat sdomain.txt| mx-takeover -check-whois -w 64 -output mx.json
_ _
_ __ ___ __ __ | |_ __ _| | _____ _____ _____ _ __
| '_ ' _ \\ \/ /____| __/ _' | |/ / _ \/ _ \ \ / / _ \ '__|
| | | | | |> <_____| || (_| | < __/ (_) \ V / __/ |
|_| |_| |_/_/\_\ \__\__,_|_|\_\___|\___/ \_/ \___|_|
hunting misconfigured MX records
musana.net | @musana
[*] Scan Starting Time: 2022-05-23 15:15:22
[!] Mailgun-api was not provided. You should register domain to mailgun manually
[*] 141 domain will be scanned.
[*] Domains that expire in less than 30 days
[*] Scan results was saved to mx.json
[*] End Time: 2022-05-23 15:15:24
Ключи — это MX-домены. Значения — домены, используемые указанным в ключе доменом.
┌──(root㉿kali)-[/home/mx-takeover]
└─# cat mx.json| jq .
{
"google.com": [
"_cisco-uds._tcp.wordcamp.org"
],
"maximum.nl": [
"mcdonalds.maximum.nl"
],
"naver.jp": [
"line.naver.jp"
],
"slgnt.eu": [
"leveranciersmail.bol.com"
],
"wordpress.net": [
"_cisco-uds._tcp.wordpress.net"
],
"wordpress.org": [
"92.wordpress.org",
"_cisco-uds._tcp.planet.wordpress.org",
"_cisco-uds._tcp.profiles.wordpress.org",
"_cisco-uds._tcp.wordpress.org",
"_cisco-uds.planet.wordpress.org",
"_cisco-uds.profiles.wordpress.org",
"93.wordpress.org",
"94.wordpress.org",
"95.wordpress.org"
]
}
Важное обновление (15.06.2022): Теперь Mailgun требует проверку DNS для всех записей (MX, TXT, CNAME), даже только для получения почты. До исправления для получения почты было достаточно проверки только MX. Около трех недель назад это работало, но уязвимость была исправлена. Ранее при отправке письма оно отправлялось успешно, и вы могли просмотреть содержимое письма в логах Mailgun, но теперь вы получаете ошибку "relaying denied". Если вы попытаетесь отправить, вы получите ошибку Remote Server returned '550 5.7.367 Remote server returned not permitted to relay -> 550 5.7.1 Relaying denied'.
Нашли этот проект полезным? Вы можете купить мне кофе.
