
Escanea registros DNS MX para detectar dominios mal configurados, expirados o no registrados vulnerables a la toma de control de correo electrónico, con soporte automático de reclamación para Mailgun.
Cómo funciona • Características • Instalación • Uso • Ejecutar mx-takeover
mx-takeover se enfoca en registros MX de DNS y detecta registros MX mal configurados. Actualmente soporta tres técnicas. Estas son:
Limitación
Mailgun usa registros MX para la recepción de correos, registros TXT para el envío y registros CNAME para el seguimiento. De estos registros, solo el registro DKIM es único y generado aleatoriamente.
Por lo tanto, no se pueden enviar correos en nombre de otra persona, pero sí se pueden leer (recibir) correos enviados por otros al dominio asociado.
mx-takeover requiere go1.17 para instalarse correctamente. Ejecute el siguiente comando para instalar.
go install -v github.com/musana/mx-takeover@latest
mx-takeover -h
Esto mostrará la ayuda de la herramienta.
┌──(root㉿kali)-[/home/mx-takeover]
└─# mx-takeover -h
_ _
_ __ ___ __ __ | |_ __ _| | _____ _____ _____ _ __
| '_ ' _ \\ \/ /____| __/ _' | |/ / _ \/ _ \ \ / / _ \ '__|
| | | | | |> <_____| || (_| | < __/ (_) \ V / __/ |
|_| |_| |_/_/\_\ \__\__,_|_|\_\___|\___/ \_/ \___|_|
hunting misconfigured MX records
musana.net | @musana
-check-whois
Verificar whois para detectar dominio MX no registrado o que expirará pronto
-expire-day int
Días estimados para la expiración (por defecto 30)
-h ayuda
-mailgun-api string
API de Mailgun para la toma de control automática del dominio
-output string
Guardar salida en archivo como JSON
-show-only-mx
Mostrar solo los que tienen registros MX
-v Imprimir todos los logs
-w int
Número de workers (por defecto 32)
El archivo de texto debe estar línea por línea
Cada dominio en el archivo de texto debe comenzar con http:// o 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
Las claves son los dominios MX. Los valores son los dominios utilizados por el dominio especificado en la clave.
┌──(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"
]
}
Actualización importante (15.06.2022): Mailgun ahora requiere verificación DNS para todos los registros (MX, TXT, CNAME), incluso solo para la recepción de correos. Antes de la corrección, para recibir correos bastaba con la verificación MX. Hace aproximadamente tres semanas, esto funcionaba, pero la vulnerabilidad ya ha sido corregida por Mailgun. Anteriormente, cuando se enviaba un correo, se enviaba correctamente y se podía acceder al contenido desde los registros de Mailgun, pero ahora se obtiene un error "relaying denied". Si intenta enviar, recibirá el error Remote Server returned '550 5.7.367 Remote server returned not permitted to relay -> 550 5.7.1 Relaying denied'.
¿Te resultó útil este proyecto? Puedes invitarme un café.
