El peligro de los ataques DHCP

Sergio García 14/03/2019

El DHCP es un elemento de red fundamental. Es muy frecuente encontrarse servidores DHCP en las redes. El equipo cliente que solicita parámetros DHCP se debe “fiar” de este servidor para obtener los parámetros de red adecuados. 

El uso de DHCP está tan extendido que, muchas veces, lo damos por supuesto: cuando llegamos a casa, nuestro teléfono móvil se conectar a la red WiFi sin que tengamos que hacer nada (salvo poner la contraseña la primera vez) y nadie se pregunta por qué.

Tratar de hacer funcionar servidores DHCP no autorizados (DHCP Rogue) en una red se conoce como DHCP Spoofing.

Suplantación de DNS o Puerta de Enlace

DHCP permite la configuración de cualquier ordenador que se conecte a una red y parte de esa configuración suele ser,por defecto,  la puerta y los servidores DNS que deben utilizar.

Los ataques tipo Man-In-the-Middle buscan forzar que el tráfico legítimo pase por sus sistemas, y una de las formas de hacerlos es, precisamente, engañando a los equipos para que usen sus servicios como puerta de enlace o sus DNS. Así, si queremos asegurar que los equipos se conecten a nuestra red, lo hagan con una configuración segura, deberemos proteger el servicio DHCP para que únicamente funcione el sistema oficial, y no sea posible crear un sistema falso.

Veremos mas adelante lo que supone esta suplantación.

 ¿Por qué es posible esto?

Para poder explicar esto, debemos explicar de antemano el funcionamiento básico del protocolo DHCP y cuáles son sus puntos débiles.

Básicamente, el funcionamiento del DHCP que permite que cualquier equipo se conecte de forma automática a una red sería:

  1. El equipo cliente se conecta a una red (bien porque se arranca un equipo apagado, bien porque conectamos nuestro móvil a una red Wifi, etc.)
  2. El equipo cliente envía un mensaje de difusión (broadcast), que llegará a todos los equipos de esa red, solicitando información sobre la propia red.
  3. El servidor DHCP (o servidor DHCP relay), y únicamente él, le responderá con un mensaje directo con la información de autoconfiguración que necesita para trabajar. En caso de haber 2 DHCPs en la red, cogerá los datos del servidor que antes responda.
  4. El cliente configurará sus parámetros con la información recibida del servidor.

Como acabamos de ver, el cliente envía su petición por difusión, por lo que todos los equipos de la red detectan esa petición. Esto es necesario porque el nuevo equipo no sabe cómo está montada la red, así que la única opción es enviar la petición de forma que todos los equipos la puedan recibir. 

El protocolo supone que, únicamente, responderá a la petición el servidor DHCP y el resto de equipos simplemente la ignorarán, pero ¿qué pasa si un equipo malicioso responde antes a esa petición?. Pues que el nuevo cliente se autoconfigurará con los parámetros que le haya enviado dicho equipo malicioso (el cliente no conoce la red así que no puede saber a priori quién es el servidor DHCP). Esta técnica es conocida como DHCP Spoofing.

¿Qué consigue el Hacker haciendo DHCP Spoofing?

Estas pueden ser algunas razones por las que realizar DHCP spoofing:

  1. Hacer creer a un nuevo equipo que nosotros somos su proxy de navegación web: así conseguiremos que el ordenador nos envíe su navegación web a nosotros que podremos analizarla.
  2. Hacer creer al nuevo equipo que somos su puerta de enlace: así todo el tráfico del equipo que salga de la red local pasará por nuestro equipo. Esta opción incluye más tráfico que no sólo el web.
  3. Asignarle servidores DNS maliciosos: podemos redirigir al usuario a nuestros servidores cuando el equipo solicite la resolución de nombre de dominio. Así el usuario cree estar entrando en su banco, cuenta de correo electrónico, etc. cuando en realidad lo está haciendo a una web falsa.
  4. Asignación de prefijos telefónicos: es posible propagar a los teléfonos IP un prefijo de llamada de tal forma que redirijan las llamadas salientes a una numeración especial que tenga un mayor coste.

Si bien las tres primeras opciones son las más habituales, el protocolo define bastantes opciones adicionales de configuración que pueden ser falseadas con fines maliciosos

Protección por DHCP Snooping

Como hemos visto, el protocolo DHCP se pone en funcionamiento cuando un equipo se conecta a una red de la que desconoce cualquier tipo de información, por lo que no es posible delegar la seguridad del sistema en el cliente, ya que simplemente no tiene información alguna de la red. 

Igualmente, hemos visto que el tráfico de petición de información es, y debe ser, visible por toda la red, por lo que, cualquier equipo conectado a la red puede actuar de forma maliciosa; lo cual impide que deleguemos la seguridad del sistema en el propio servidor. Así pues, la seguridad de DHCP queda en manos de los propios equipos de red (switches y routers, principalmente).

Las diferentes técnicas de protección que componen el DHCP Snooping, son las siguientes:

1.    Definir, de forma fija y estática, cuáles son los servidores DHCP oficiales de la red. De esta forma, cuando un equipo de red detecta tráfico del protocolo DHCP que no se ha originado en uno de los servidores oficiales, puede descartarlo.

Funcionamiento de DHCP Snooping. Fuente imagen: peerlyst.com

  1. Definir desde qué interfaces puede generarse tráfico DHCP. Podemos indicarles a los equipos de red, desde cuáles de sus interfaces son confiables y se puede recibir tráfico DHCP. De esta manera, si el equipo detecta tráfico de dicho protocolo que se origina desde una posición no confiable, puede descartarlo. Así, si un equipo de usuario responde a una petición de DHCP, el equipo de red más cercanos a él lo detecta y elimina dicho tráfico (y puede bloquear la toma de red, avisar al administrador, etc.).
  2. Delegación de DHCP. Es posible unificar la gestión del DHCP en un servicio externo que no esté dentro de la red local propia (p.e. empresas con diferentes oficinas interconectadas, pero con el servicio centralizado en la sede central) de tal forma que, los equipos de red descartarían cualquier paquete DHCP local.

El equipo de Seguridad de Derten desea que esta información le haya servido de ayuda para conocer el riesgo que existe con la suplantación del servidor DHCP.