Capital Software Blog

Suplantación de DNS (DNS Spoofing)

¿Qué es la suplantación de identidad del sistema de nombres de dominio (DNS)?

La suplantación de DNS (DNS Spoofing) (también conocido como envenenamiento de caché de DNS) es un ataque en el que se utilizan registros de DNS alterados para redirigir el tráfico en línea a un sitio web fraudulento que se asemeja a su destino previsto.

Una vez allí, se solicita a los usuarios que inicien sesión en (lo que creen que es) su cuenta, lo que le da al perpetrador la oportunidad de robar sus credenciales de acceso y otros tipos de información confidencial . Además, el sitio web malicioso a menudo se usa para instalar gusanos o virus en la computadora de un usuario, lo que le da al perpetrador acceso a largo plazo a él y a los datos que almacena.

Los métodos para ejecutar un ataque de suplantación de DNS incluyen:

  • Hombre en el medio (MITM)  : la intercepción de las comunicaciones entre los usuarios y un servidor DNS para enrutar a los usuarios a una dirección IP diferente/maliciosa.
  • Compromiso del servidor DNS  : el secuestro directo de un servidor DNS, que está configurado para devolver una dirección IP maliciosa.

Servidor DNS comprometido que lleva a cabo un ataque de suplantación de DNS

Ataque de compromiso del servidor DNS.

Ejemplo de envenenamiento de caché de DNS

El siguiente ejemplo ilustra un ataque de envenenamiento de caché DNS, en el que un atacante (IP 192.168.3.300) intercepta un canal de comunicación entre un cliente (IP 192.168.1.100) y un equipo servidor perteneciente al sitio web  www.estores.com  (IP 192.168. 2.200).

En este escenario, se utiliza una herramienta (p. ej., arpspoof) para engañar al cliente haciéndole creer que la dirección IP del servidor es192.168.3.300.Al mismo tiempo, se hace pensar al servidor que la IP del cliente también es192.168.3.300.

Tal escenario procedería de la siguiente manera:

  1. El atacante usa arpspoof para emitir el comando:  arpspoof 192.168.1.100 192.168.2.200 . Esto modifica las direcciones MAC en la tabla ARP del servidor, haciéndolo pensar que la computadora del atacante pertenece al cliente.
  2. El atacante una vez más usa arpspoof para emitir el comando:  arpspoof 192.168.2.200 192.168.1.100 , que le dice al cliente que la computadora del perpetrador es el servidor.
  3. El atacante emite el comando de Linux:  echo 1> /proc/sys/net/ipv4/ip_forward . Como resultado, los paquetes IP enviados entre el cliente y el servidor se reenvían a la computadora del perpetrador.
  4. El archivo anfitrión, 192.168.3.300estores.com  se crea en la computadora local del atacante, que asigna el sitio web www.estores.com a su IP local.
  5. El perpetrador configura un servidor web en la IP de la computadora local y crea un sitio web falso hecho para parecerse a  www.estores.com .
  6. Finalmente, se utiliza una herramienta (p. ej., dnsspoof) para dirigir todas las solicitudes de DNS al archivo de host local del perpetrador. Como resultado, el sitio web falso se muestra a los usuarios y, solo al interactuar con el sitio,   se instala malware en sus computadoras.

Mitigación de DNS Spoofing mediante la seguridad del servidor de nombres de dominio (DNSSEC)

El DNS es un protocolo sin cifrar, lo que facilita la interceptación del tráfico con suplantación de identidad. Además, los servidores DNS no validan las direcciones IP a las que están redirigiendo el tráfico.

DNSSEC  es un protocolo diseñado para asegurar su DNS agregando métodos adicionales de verificación. El protocolo crea una firma criptográfica única almacenada junto con sus otros registros DNS, por ejemplo, un registro y CNAME. Luego, su resolución de DNS utiliza esta firma para autenticar una respuesta de DNS, lo que garantiza que el registro no haya sido manipulado.

Si bien DNSSEC puede ayudar a proteger contra la falsificación de DNS, tiene varias desventajas potenciales, que incluyen:

  • Falta de confidencialidad de los datos  : DNSSEC autentica, pero no codifica las respuestas de DNS. Como resultado, los perpetradores aún pueden escuchar el tráfico y usar los datos para ataques más sofisticados.
  • Implementación compleja  : DNSSEC a menudo está mal configurado, lo que puede hacer que los servidores pierdan los beneficios de seguridad o incluso denieguen el acceso a un sitio web por completo.
  • Enumeración de zonas  : DNSSEC utiliza registros de recursos adicionales para permitir la validación de firmas. Uno de esos registros, NSEC, puede verificar la inexistencia de una zona DNS. También se puede usar para recorrer una zona DNS para recopilar todos los registros DNS existentes, una vulnerabilidad llamada enumeración de zona. Las versiones más nuevas de NSEC, llamadas NSEC3 y NSEC5, publican registros hash de nombres de host, lo que los encripta y evita la enumeración de zonas.

Fuente: Imperva