Archivo de la etiqueta: DHCP snooping

Podcast – 41 – DHCP Snooping

En el capítulo de hoy, convertimos en audio el artículo sobre DHCP Snooping de este mismo blog.

Son poco más de 9 minutos. Espero que os guste 🙂

Logo DHCP
Logo DHCP Fuente imagen: IES Haría

Como el servicio DHCP es utilizado por los equipos que se conectan a una red y desconocen todo de ella, no podemos delegar en ellos mismos las funciones de seguridad. De igual forma, al no saber qué hay o no hay en la red no podemos reposar la seguridad en los servidores de la red, porque el equipo nuevo no sabe que debe consultarles a ellos. Así pues, la seguridad del protocolo DHCP descansa en los propios equipos de red.

Para asegurar que los nuevos usuarios sólo reciben la información del servidor DHCP oficial de la red los switches inspeccionan el tráfico de este protocolo y bloquean aquel que no cumpla las características especificadas por los administradores de red.

Descarga directa.

Podcast – 28 – Proteger la red local

En diferentes programas hemos visto estrategias lógicas, tanto de ataque como de defensa, pero hoy bajaremos a una defensa más física: cómo podemos proteger nuestras redes locales para que no sean alteradas sin el consentimiento de su administrador.

Micro con feed

Fuente imagen:PerfectYourPodcast

Cuando una empresa tiene diferentes sedes es muy común que la gestión de la red local esté centralizada en un equipo administradores (según el tamaño de empresa el “equipo” puede ser una única persona, y puede que no sea su única labor…) que trabaja desde una oficina a cientos o miles de kilómetros de las otras bases. Así, ¿cómo puede el administrador de red minimizar problemas de red física local en ubicaciones tan lejanas donde, generalmente, otras personas pueden acceder y trastear sin ser vistas?

Para asegurar el comportamiento esperado de la red local, un administrador de redes se asegurará de, al menos, estos tres puntos:

  1. Los equipos de red (switches, routers…) deben estar en un cuarto cerrado bajo llave donde sólo una o dos personas puedan acceder. Si los equipos están en una sala común al alcance de cualquier trabajador o visitante es mucho más probable que alguien los toque y acabe generando problemas. Así pues hay una primera seguridad física: hay que evitar que sean alcanzables físicamente.
  2. El segundo punto sería una seguridad lógica que impida que la gestión del equipo sea accesible desde la propia red local. Por norma general un administrador de redes controlará y administrará sus equipos utilizando una red lógica diferente a la de los usuarios. Así pues, siempre que sea posible, se creará una VLAN específica para la gestión de los propios equipos de red. Esta VLAN será diferente a la red donde están conectados los equipos de usuario (ordenadores, impresoras, puntos Wifi, etc.). Además se aplicará una política de acceso de tal forma que únicamente los administradores puedan acceder a esta red de gestión específica: nadie de la oficina remota debe poderse conectar a la consola de gestión de los equipos de red. Lo ideal es que cualquier intento genere una alarma que avise al administrador para que pueda actuar en consecuencia (y darle un tirón de orejas al usuario cotilla).
  3. Nos falta el tercer punto: proteger a la red en su conjunto. No es nada raro que ya sea por ampliaciones no previstas o porque alguien considera que necesita más tomas de red en una sala de reuniones conecten switches o hubs a la propia red. Generalmente estos equipos vienen configurado para que funcionen a la primera sin más preparación (Plug&Play), pero en manos de una persona no técnica estos añadidos pueden acabar con un espagueti de cables y una red con una gran cantidad de interconexiones que la haga lenta e incluso que provoque pérdidas de servicio: No sería la primera oficina que se queda sin red porque alguien conectó los dos lados del cable al mismo equipo generando un bucle físico que acaba en tormentas de tráfico que inundan la red y la inutilizan. Así pues para proteger el correcto funcionamiento de la red local, un administrador debe hacer lo posible para evitar que conecten equipamiento de red no previsto que pueda generar problemas. Para ello hay dos estrategias básicas en función de los equipos de red que se pueden conectar:
      1. Los hubs (o concentradores) son equipos tontos que simplemente multiplican el número de equipos que se pueden conectar a la red. No tienen inteligencia alguna y cualquier cosa que reciben por un puerto de red lo envían por el resto. Son poco eficientes y propensos a generar tormentas de broadcast, pero son baratos. ¿Cómo evitamos que conecten un hub a nuestros equipos de red? Limitando el número máximo de equipos que pueden conectarse a cada una de nuestras tomas de red. Así si en una boca de red donde sólo debería haber un ordenador de usuario, nuestro equipo detecta dos o más sabremos que pasa algo raro. La estrategia más común es inhabilitar dicha toma (dejando sin servicio a esos ordenadores) para proteger la red en su conjunto.
      2. Como hemos dichos los hubs son equipos poco eficientes por lo que tienden a ser sustituidos por los switches (o conmutadores). Una de las grandes ventajas de los switches es su capacidad para detectar bucles de red y permitir la redundancia de caminos: así si cae una conexión pueden activar otra que tuvieran reconocida previamente para que los usuarios sigan teniendo servicios. Este capacidad de redundancia se consigue mediante el protocolo de spanning tree (o sus variantes más modernas). Este protocolo intercambia mensajes BPDU entre los switches de tal forma que todos aprenden una topología de red y detectan aquellos caminos redundantes que pueden usar en caso de problemas con la topología inicial. Los ordenadores o impresoras no utilizan este protocolo, ya que es algo propio de los switches, por lo que si nuestros equipos de red detecta tráfico BPDU desde una toma de red que debería ser de equipo final (el PC de un usuario) puede asumir que alguien ha conectado un switch y bloquear dicha toma de red para proteger al resto.

Descarga directa.

DHCP snooping

Se utiliza la expresión DHCP Snooping para definir una serie de técnicas que permiten asegurar que únicamente los servidores DHCP autorizados estén funcionando en una red.

Logo DHCP

Logo DHCP
Fuente imagen: IES Haría

El intento de hacer funcionar servidores DHCP no autorizados (DHCP Rogue) se conoce como DHCP Spoofing.

El servicio de DHCP (Dynamic Host Configuration Protocol)  es de uso casi imprescindible para cualquier red de uso común: permite que los equipos se unan a una red de forma automática y sin necesidad de configuración manual. Así ya no hace falta que un administrador de la red configure todos y cada uno de los equipos para poder trabajar. Su uso 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 porqué.

Porqué proteger el servicio DHCP

Como hemos visto el servicio DHCP permite la configuración de cualquier ordenador que se conecte a una red y parte de esa configuración suele ser la puerta por defecto y los servidores DNS que debe 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.

Debilidades del funcionamiento DHCP

Antes de proteger nada, hay que revisar el funcionamiento básico del protocolo DHCP y cuáles son sus puntos débiles.

A grandes rasgos el funcionamiento de DHCP que permite que cualquier equipo se conecte de forma automática a una red sería:

  1. Un equipo 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 el elemento delegado), y únicamente él, le responderá con un mensaje directo con la información de autoconfiguración que necesita para trabajar.
  4. El cliente configurará sus parámetros con la información recibida del servidor.

Ataque DHCP Spoofing

Ataque DHCP Spoofing
Fuente imagen: RSTUT

La petición del cliente se envía en modo difusión por lo que todos los equipos de la red detectan esa petición. Esto es necesario porqué 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 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.

Motivos para el DHCP Spoofing

¿Para qué querríamos falsear los datos de configuración de los nuevos equipos que se conecten a la red? Estos son los principales usos de un DHCP spoofing:

  • Hacer creer a un nuevo equipo que nosotros somos su proxy de navegación: Así conseguiremos que el ordenador nos envíe su navegación web a nosotros que podremos analizarla.
  • 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.
  • 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 creer estar entrando en su banco, cuenta de correo electrónico, etc. cuando en realidad lo está haciendo a una web falsa.
  • 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 pero el protocolo define bastantes opciones de autoconfiguració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 (swithces y routers, principalmente).

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

Funcionamiento de los puertos confiables.

Funcionamiento de los puertos confiables.
Fuente imagen: Cisco

  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.
  2. Definir desde qué interfaces puede generarse tráfico DHCP. Podemos indicarle 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.).
  3. 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.