Domain/Subdomain takeover

Apoya a HackTricks

Usa Trickest para construir y automatizar flujos de trabajo fácilmente, impulsados por las herramientas comunitarias más avanzadas del mundo. Obtén acceso hoy:

Toma de control de dominio

Si descubres algún dominio (domain.tld) que está siendo utilizado por algún servicio dentro del alcance pero la empresa ha perdido la propiedad de este, puedes intentar registrarlo (si es lo suficientemente barato) y avisar a la empresa. Si este dominio está recibiendo alguna información sensible como una cookie de sesión a través de un parámetro GET o en el encabezado Referer, esto es sin duda una vulnerabilidad.

Toma de control de subdominio

Un subdominio de la empresa apunta a un servicio de terceros con un nombre no registrado. Si puedes crear una cuenta en este servicio de terceros y registrar el nombre que está en uso, puedes realizar la toma de control del subdominio.

Hay varias herramientas con diccionarios para verificar posibles tomas de control:

Generación de Toma de Control de Subdominio a través de DNS Wildcard

Cuando se utiliza un wildcard de DNS en un dominio, cualquier subdominio solicitado de ese dominio que no tenga una dirección diferente explícitamente será resuelto a la misma información. Esto podría ser una dirección IP A, un CNAME...

Por ejemplo, si *.testing.com está wildcard a 1.1.1.1. Entonces, not-existent.testing.com apuntará a 1.1.1.1.

Sin embargo, si en lugar de apuntar a una dirección IP, el administrador del sistema lo apunta a un servicio de terceros a través de CNAME, como un subdominio de Github por ejemplo (sohomdatta1.github.io). Un atacante podría crear su propia página de terceros (en Github en este caso) y decir que something.testing.com apunta allí. Porque, el CNAME wildcard permitirá que el atacante genere subdominios arbitrarios para el dominio de la víctima apuntando a sus páginas.

Puedes encontrar un ejemplo de esta vulnerabilidad en el informe de CTF: https://ctf.zeyu2001.com/2022/nitectf-2022/undocumented-js-api

Explotando una toma de control de subdominio

La toma de control de subdominio es esencialmente un spoofing de DNS para un dominio específico a través de internet, permitiendo a los atacantes establecer registros A para un dominio, llevando a los navegadores a mostrar contenido desde el servidor del atacante. Esta transparencia en los navegadores hace que los dominios sean propensos al phishing. Los atacantes pueden emplear typosquatting o dominios Doppelganger para este propósito. Especialmente vulnerables son los dominios donde la URL en un correo electrónico de phishing parece legítima, engañando a los usuarios y evadiendo filtros de spam debido a la confianza inherente del dominio.

Revisa este post para más detalles

Certificados SSL

Los certificados SSL, si son generados por atacantes a través de servicios como Let's Encrypt, añaden legitimidad a estos dominios falsos, haciendo que los ataques de phishing sean más convincentes.

Seguridad de Cookies y Transparencia del Navegador

La transparencia del navegador también se extiende a la seguridad de las cookies, regida por políticas como la política de mismo origen. Las cookies, a menudo utilizadas para gestionar sesiones y almacenar tokens de inicio de sesión, pueden ser explotadas a través de la toma de control de subdominio. Los atacantes pueden recopilar cookies de sesión simplemente dirigiendo a los usuarios a un subdominio comprometido, poniendo en peligro los datos y la privacidad del usuario.

Correos Electrónicos y Toma de Control de Subdominio

Otro aspecto de la toma de control de subdominio involucra servicios de correo electrónico. Los atacantes pueden manipular registros MX para recibir o enviar correos electrónicos desde un subdominio legítimo, mejorando la eficacia de los ataques de phishing.

Riesgos de Orden Superior

Más riesgos incluyen la toma de control de registros NS. Si un atacante obtiene control sobre un registro NS de un dominio, puede potencialmente dirigir una parte del tráfico a un servidor bajo su control. Este riesgo se amplifica si el atacante establece un alto TTL (Tiempo de Vida) para los registros DNS, prolongando la duración del ataque.

Vulnerabilidad de Registro CNAME

Los atacantes podrían explotar registros CNAME no reclamados que apuntan a servicios externos que ya no se utilizan o han sido descontinuados. Esto les permite crear una página bajo el dominio de confianza, facilitando aún más el phishing o la distribución de malware.

Estrategias de Mitigación

Las estrategias de mitigación incluyen:

  1. Eliminar registros DNS vulnerables - Esto es efectivo si el subdominio ya no es necesario.

  2. Reclamar el nombre de dominio - Registrando el recurso con el proveedor de nube respectivo o recomprando un dominio expirado.

  3. Monitoreo regular de vulnerabilidades - Herramientas como aquatone pueden ayudar a identificar dominios susceptibles. Las organizaciones también deben revisar sus procesos de gestión de infraestructura, asegurando que la creación de registros DNS sea el último paso en la creación de recursos y el primer paso en la destrucción de recursos.

Para los proveedores de nube, verificar la propiedad del dominio es crucial para prevenir tomas de control de subdominio. Algunos, como GitLab, han reconocido este problema e implementado mecanismos de verificación de dominio.

Referencias

Usa Trickest para construir y automatizar flujos de trabajo fácilmente, impulsados por las herramientas comunitarias más avanzadas del mundo. Obtén acceso hoy:

Apoya a HackTricks

Last updated