Seguridad Wi-Fi empresarial – Servidores radius (I)

En la actualidad las conexiones inalámbricas se han vuelto algo indispensable a la hora de conectarnos a internet, el aluvión de nuevos dispositivos como móviles, tablets, ebooks etc… Hacen que en casi todo hogar doméstico exista un router con funciones de punto de acceso para poder conectarnos sin cables.

Los motivos que llevan a conectarse sin cables son varios, desde la simple comodidad de no tirar cables por casa, a las características de la infraestructura de una empresa o las propiedades geográficas de un lugar, que no permiten hacer otro tipo de conexión.

En 1999 se asienta la tecnología inalámbrica llamada Wi-Fi, funcionando bajo el estándar IEEE 802.11b, que nos daba una mísera velocidad de 11 Mbps, y donde los dispositivos aún eran únicamente compatibles con el famoso cifrado WEP, el cual usa el algoritmo de cifrado RC4 de 128 bits (104 en realidad) y que fácilmente puede ser roto.

La evolución hace que surja el nuevo cifrado WPA, el cual consigue solventar los problemas de seguridad del cifrado WEP, pero ¿WPA es del todo seguro?, bueno no del todo porque hereda muchos defectos del cifrado WEP.

A la hora de cifrar nuestra conexión Wi-Fi existen dos maneras de cifrarlo con WPA y WPA2 (basado en el nuevo estándar 802.11i).

    1. WPA-PSK / WPA2-PSK (pre-shared key) o clave pre compartida, con dos modos de seguridad:

      1.1. TKIP: (Temporal Key Integrity Protocol), la cual no es del todo segura, sobre todo si se usa conjuntamente con QoS.
      1.2. AES: (Advanced Encryption Standard), un algoritmo de cifrado más seguro.

    En cualquiera de estos dos tipos de cifrados existe la posibilidad de que un atacante este capturando tráfico en el momento que nos autentiquemos contra el AP y que capture el “handshake”, ya que todas las claves pre compartidas son vulnerables a capturarse e intentar descifrarlas con ataques por diccionario, cosa que no ocurre con un servidor radius, ya que genera las claves aleatoriamente.

    2. WPA-ENTERPRISE / WPA2-ENTERPRISE (servidor radius), en este tipo de configuración, básicamente tenemos una máquina conectada por cable al punto de acceso, el cual manda las peticiones de autenticación a este servidor (normalmente por el puerto UDP 1812 y 1813).

Los servidores radius también se utilizan por ejemplo, cuando un ISP quiere validar las credenciales de un abonado.

Existe un pequeño inconveniente en este tipo de configuraciones Wireless y es que dispositivos multimedia como pueden ser una PlayStation 3, Xbox 360, un NAS o una BlackBerry (no es el caso de Android e IOS), o en general un dispositivo de uso doméstico, no tienen la capacidad de conectarse directamente a un servidor radius ya que carecen de la posibilidad de tener una configuración con certificados, ya sea por que el fabricante no la ha incluido o porque el dispositivo no lo permite. Para estos casos siempre existe la opción de conectarlos por cable a un segundo dispositivo que si que sea capaz de conectarse a un servidor radius y comparta la conexión, haciendo de puente, o tener doble SSID en nuestra red donde uno de los SSID funciona con WPA-PSK.

La norma IEEE 802.1X usada, es el llamado protocolo EAP (Extensible Authentication Protocol), el cual es usado para conexiones PPP y adaptado a LAN por lo que terminó llamándose EAPoL (EAP over LAN).

En estos casos se puede considerar el AP como algo transparente a la autenticación, ya que lo único que hace es reenviar y encapsular los paquetes hacia el servidor radius.

Tipos de configuración en lo que a seguridad se refiere:

    • EAP-TLS: Usa TLS, estableciendo un túnel cifrado para la autenticación. Tanto el cliente como el servidor deben tener un certificado de clave privada, con lo que es un método muy seguro, el único inconveniente es que hay que dotar a todos los clientes que se quieran conectar, con dicho certificado.

    • PEAPv0 con EAP- MS-CHAPv2, también llamado PEAP a secas. La autenticación se hace por medio de un usuario y de una contraseña, además en este caso es únicamente el servidor el que contiene el certificado y la clave cifrada, pero este tipo de autenticación no es tan seguro como el anterior, ya que la clave se cifra mediante un túnel pero el usuario va en texto claro, con lo que puede ocasionar que se produzca un ataque de denegación de servicio, ya que se pueden crear intentos de conexión con clave incorrecta, pero usuario correcto.

    • EAP-TTLS: Quizás el método más equitativo en relación infraestructura-seguridad, es decir ofrece una gran seguridad y sólo hace falta contener el certificado en el servidor. La autenticación se hace fácilmente con un usuario y una contraseña, sin que exista peligro de ataque por diccionario. Ahora el túnel cifrado se crea a partir del certificado que hay en el servidor, donde el cliente envía las credenciales sin hacer uso de EAP, y usando otros protocolos como PAP (se suele usar en universidades y organismos públicos junto con el uso de hotspot). En este caso tanto la clave como el usuario van cifrados, aumentando la seguridad de PEAP

    • PEAP-TLS o (Protected EAP-TLS): creado conjuntamente por Microsoft, Cisco y RSA Security: es aún más seguro que EAP-TTLS pero no tan versátil, ya que funciona de forma similar a EAP-TLS pero mejora su seguridad porque aquí el certificado del cliente, sí va cifrado.

Dentro del servidor radius las credenciales de los usuarios pueden estar en un archivo de texto, o fuera del servidor en una base de datos externa o un servidor LDAP, donde se almacenan y se consultan a la hora de autenticarse un cliente.

La conclusión es que si van a ser pocos ordenadores lo más seguro es usar PEAP-TLS y si una empresa no se puede permitir el uso de tarjetas inteligentes o el crear muchos certificados, la solución es EAP-TTLS.

Ahora que se conocen las principales formas de operar, sólo queda conocer que software existe para crear nuestro servidor radius:

El más famoso puede que sea freeradius, (sucesor de cistron radius) ya que admite muchos tipos de configuración y además hay una gran comunidad detrás y por supuesto es gratuito y está disponible para sistemas Linux y Windows. También contiene una interfaz php que nos puede ayudar a la configuración, estando todo integrado en un XAMP llamado dialup admin.

Se pueden crear servidores radius en Windows Server 2008 o 2012, con la creación de un directorio activo y la configuración e instalación de los certificados pertinentes (AD CS), aunque existen versiones como tekradius, que pueden ser una buena alternativa para sistemas Windows.

Existen otras distribuciones Linux que opcionalmente incluyen la función de servidor radius entre otras, ya que suelen actuar como firewalls. Es el caso de: zeroshell, pfsense o routerOS.

En el próximo artículo explicaré como instalar y configurar freeradius en debían, con PEAP-TLS para tener nuestra Wi-Fi protegida al 100%.

Comments

  1. Gracias por la información. Voy a probar la app TekRadius en mi sistema Windows a ver que tal.

    Saludos

  2. http://JORGE says

    hola buen dia, sabes como configurar windows server 2012 para hacer funcionar un servidor radius con un acces point linksys, de antemano gracias espero y me puedas ayudar