La primera parte de un ataque dirigido (es decir, penetrar en una red) es averiguar todo lo posible sobre el objetivo. Es muy común que una empresa utilice el mismo nombre de dominio en la red interna que en los sitios públicos disponibles. También es muy común que el nombre del host describa su propósito.
Si no usa Split DNS, eso significaría que publica la información sobre todos los hosts dentro de un dominio en un solo lugar público disponible. Esta información publicada revelaría los nombres de los hosts y también las direcciones IP utilizadas internamente y, por lo tanto, podría obtener una gran cantidad de información interna sobre la infraestructura de la empresa.
DNS simplemente asigna nombres de texto a direcciones IP.
Solo un ejemplo de lo que podría hacer un atacante cuando conoce estas asignaciones para hosts internos:
- Acceda a la información de DNS disponible al público y descubra que hay un host llamado wiki.example.com con la dirección IP 10.1.2.3. Dado el nombre de los hosts, este podría ser un wiki interno que probablemente proporcione información interesante sobre la compañía. Tratemos de obtener exfiltrate la información de la empresa interna publicada allí.
- Para hacer esto, el atacante configura su propio sitio web example.attacker. Este servidor se resuelve inicialmente a una dirección IP externa controlada por el atacante. El atacante también controla el servidor DNS de este dominio. Un enlace a este servidor incluirá un correo electrónico de phishing interesante o similar para que alguien dentro de la empresa acceda al sitio.
- Una vez que se accedió al sitio y se descargaron algunos scripts, el atacante cambiará la dirección IP de este sitio como visible desde la compañía a la dirección IP del sitio al que le gusta atacar: es decir, example.attacker ahora se resolverá de la misma manera Dirección IP 10.1.2.3 como wiki.ejemplo.com. Este truco se denomina Rebinding DNS .
- La secuencia de comandos ya descargada del sitio de los atacantes intenta acceder a example.attacker. Dado que este sitio ahora se resuelve a 10.1.2.3, esta solicitud accederá al servidor interno wiki.example.com, pero con el nombre example.attacker. Los servidores utilizados solo para un único dominio a menudo ignoran el encabezado Host de la solicitud, de modo que el contenido del sitio es accesible no solo mediante wiki.example.com sino también example.attacker siempre que ambos nombres se resuelvan en la misma dirección IP.
- Debido a que la misma política de origen solo restringe el acceso por nombre DNS y no por dirección IP, los scripts ya cargados del host de example.attacker original ahora pueden interactuar con el nuevo sitio host de example.attacker (que es wiki.example.com) y, por lo tanto, obtenga la información de este sitio y reenvíe esta información al atacante.
En resumen: cuanto más sepa sobre su objetivo, mejor podrá comprometerlo. El DNS dividido no es la solución definitiva para protegerse contra todas las fugas de datos, pero ayuda a proteger al menos parte de los datos. Por lo tanto es parte de la defensa en profundidad.
He tenido muchos problemas con el DNS dividido en el pasado, con programas que no respetan adecuadamente los ttls. Guardan la resolución de la memoria caché durante mucho tiempo y, dado que el DNS es inconsistente (es decir, depende de mi IP de origen), se rompen.
Parece que usa el mismo sistema (¿portátil o móvil?) tanto dentro de la red de la empresa protegida como en el internet sin protección. Esta es una muy mala idea ya que proporciona un vector fácil para que el malware se transfiera a la red de la empresa, evitando todas las protecciones que puedan tener. La forma segura sería, en cambio, hacer que la computadora portátil de la empresa nunca se conecte directamente a Internet, sino que solo use una VPN cuando se encuentre fuera de los túneles, todo a través de la red de la empresa, incluidas las búsquedas de DNS. Y el hardware privado nunca debe conectarse a la red de la empresa protegida, sino que debe estar contenido dentro de una red separada cuando se utiliza dentro de la empresa. Si se usa de esta manera, tampoco debería ver problemas con la división de DNS, ya que nunca cambia entre configuraciones de DNS externas e internas en el mismo sistema.