¿Cómo proteger una red inalámbrica?
www.idg.es
Atacar redes inalámbricas se ha convertido desde hace tiempo en un deporte, una diversión o un hobby. En casi todos los medios de comunicación se han escrito artículos sobre cómo hackear redes Inalámbricas. En este curso de tres entregas, que ahora comenzamos, repasamos en profundidad todas las tecnologías de protección para entornos inalámbricos, así como las principales técnicas de defensa existentes.
Sigue siendo común que los ataques a redes inalámbricas tengan éxito. ¿Por qué sucede esto? Justificaciones como: “¿quién me va a atacar a mi?” “Yo no tengo en mi ordenador información importante” o “me da igual que usen mi red”, suelen ser reflejo de una falta de conocimiento del riesgo, o un problema de conocimiento técnico acerca de cómo se puede securizar una red inalámbrica. En las siguientes líneas vamos a hacer un rápido repaso a las tecnologías de seguridad en las redes inalámbricas y viendo los riesgos que tienen cada una de ellas para poder elegir una buena opción a la hora de proteger nuestra red.
La tecnología wireless
Cualquier conexión que se realice sin cables se considera inalámbrica, pero nosotros nos vamos a centrar en las redes WLAN, o redes de área local inalámbricas. Las redes inalámbricas pueden ser de dos tipos, Ad-hoc, que sería una red entre dos equipos iguales (red de pares) o de infraestructura, que simularía una conexión de red basada en un hub o concentrador de conexiones. Esto es importante porque mediatiza los tipos de ataques que se pueden realizar.
Los estándares que gobiernan estas tecnologías son los que dependen de la norma 802.11. Los primeros que llegaron al público fueron los 802.11b, 802.11a y 802.11g, estándares que permitían velocidades de transmisión desde 11 Mb/s hasta 108 Mb/s. Desde el año 2004 se trabaja en el estándar 802.11n que permitirá implementaciones de hasta 500 Mb/s y se espera que esté publicado a finales de este año o principios de 2007. Sorprendentemente, al igual que sucedió con la espera del 802.11i (del que hablaremos un poco más adelante), ya están disponibles dispositivos 802.11n. Estos productos se han diseñado siguiendo la información en el borrador del estándar que se aprobó. Para completar algunas de las “letras” que podemos encontrarnos en los estándares, existe la versión 802.11e, pensada para transmisión de vídeo y audio en tiempo real mediante la utilización de protocolos de calidad de servicio. Vale, hasta aquí información sobre “letras” que nos marcan algunas características de las conexiones, pero no de la seguridad. Sigamos adelante.
Definición de una WLAN
Lo primero que debemos definir es el nombre de nuestra red WLAN, y para ello es necesario conocer unas breves definiciones aclaratorias:
- BSS (Basic Service Set). Se refiere a un conjunto de máquinas que pertenecen a una misma red inalámbrica y que comparten un mismo punto de acceso a la red inalámbrica (AP)
- BSSID (Basic Service Set Identifier): Es el identificador que se usa para referirse a un BSS. Tiene la estructura de dirección MAC y generalmente todos los fabricantes utilizan la dirección MAC del AP. Esto es importante, porque los atacantes descubren este valor para poder identificar los clientes de la red. Para ello, los atacantes buscan en las comunicaciones de red que máquinas se están conectando con ese AP.
- ESS (Extended Service Set). Es un conjunto de BSS que forman una red, generalmente será una WLAN completa.
- SSID (Service Set Identifier): Es el nombre de la WLAN, entendible para el usuario, el que nosotros configuramos: mi_wlan, escrufi o wlan1.
- ESSID (Extender Set Service Identifier): Es el identificador del ESS, es transparente al usuario y lleva la información del SSID.
Al final, cuando configuramos una WLAN, lo que debemos hacer es seleccionar un nombre para nuestro SSID y un canal de radio para la frecuencia de comunicación.
Ocultación SSID
El SSID es necesario para establecer una comunicación, es decir, cuando un cliente se quiere conectar con el AP necesita conocer el SSID de la red. El estándar para WLAN permite dos formas de trabajar con el SSID:
- Descubrimiento Pasivo: El cliente recibe una trama baliza (Beacon frame) con la información del SSID. El AP difunde constantemente unas tramas de información con el ESSID donde va la información del SSID de la red.
- Descubrimiento Activo: El cliente tiene que conocer el SSID porque el AP no ofrece beacom Frames.
El uso de una u otra tecnología no representa una medida de seguridad, ya que descubrir el SSID de una WLAN es trivial para un atacante, que sólo tiene que esperar a que un equipo cliente envíe información para conectarse y ver el SSID.
De hecho, el hacker no necesita ser paciente y esperar a que un equipo se conecte para ver el SSID, sino que puede realizar lo que se llama el ataque 0, es decir, enviar una trama de gestión al cliente, simulando ser el AP (spoofeando la dirección MAC de origen) que le pide que se desconecte. El cliente, muy cumplidor con el estándar, se desconecta e intenta conectarse con el siguiente AP del ESS. Si sólo hay un AP, entonces se conectará con el mismo. Durante este proceso, el hacker descubrirá el SSID de la WLAN.
En definitiva, activar o no el ESSID Broadcast es una opción de comodidad y/o contaminación del espectro de radio, no es una medida de seguridad.
Protección MAC
Para evitar que se conecten clientes no deseados, muchos AP ofrecen opciones para crear listas blancas de equipos que se pueden conectar en función de la dirección MAC de los clientes. Para ello, en el AP, se añaden las direcciones de las máquinas que queremos permitir.
Esto no es una medida de seguridad robusta, pues es bastante fácil de saltar para un atacante. Utilizando cualquier herramienta de análisis de redes WLAN, como Netstumbler, es posible descubrir los SSID, el canal y la frecuencia que está siendo utilizada, así como la dirección MAC del AP.
Una vez que se conocen las MAC de los puntos de acceso (AP), conocer las MAC de los clientes autorizados es tan sencillo como abrir un sniffer de red, como AiroPeek, y ver qué direcciones se comunican con la MAC del AP. Ésas serán las MAC autorizadas. Cuando ya se tiene la lista de las direcciones autorizadas, el atacante se configura una MAC válida con alguna de las muchas herramientas que hay para spoofear (suplantar) direcciones y ya se habrá saltado esa protección.
En conclusión, el filtrado de direcciones MAC no es una buena protección de seguridad, ya que es muy sencillo para un atacante saltarse esta protección.
Autenticación y cifrado
El estándar 802.11 define un sistema para Autenticación y cifrado de las comunicaciones WLAN que se llama WEP (Wireless Equivalent Privacy).
WEP utiliza una palabra clave que va a ser utilizada para autenticarse en redes WEP cerradas y para cifrar los mensajes de la comunicación.
Para generar la clave, muchos AP piden una frase y luego, a partir de ella, se generan cinco claves distintas para garantizar el máximo azar en la elección de la misma. En otros simplemente se pide directamente la clave, respetando las restricciones de longitud que se configure.
Para el cifrado de cada trama se añadirá una secuencia cambiante de bits, que se llama Vector de Inicialización (IV), con el fin de que no se utilice siempre la misma clave de cifrado y descifrado. Así, dos mensajes iguales no generarán el mismo resultado cifrado, ya que la clave va cambiando.
Como se puede ver en la imagen, en este caso tenemos un AP que permite tanto generar cinco claves a partir de una frase como usar directamente una que nosotros proporcionemos. Cuando tenemos cinco claves, hemos de marcar cuál es la que vamos a utilizar, porque WEP sólo utiliza una clave para todo. Como se puede ver en la imagen, hemos seleccionado una opción de clave WEP de 64 bits, de los cuales, cinco octetos (40 bits) son la clave, y los 24 bits restantes serán el IV. Es decir, en una comunicación normal tendríamos 2 elevado a 24 claves distintas de cifrado.
Sin embargo, en el caso de WEP de 128 bits tendremos 13 octetos fijos (104 bytes) y 24 bits cambiantes (IV); es decir, tendremos el mismo número de claves pero de mayor longitud.
Proceso de cifrado y descifrado
Para entender el proceso de autenticación en redes WLAN con WEP es necesario explicar previamente el proceso de cifrado y descifrado ya que es utilizado durante el proceso de autenticación de un cliente.
El proceso de cifrado es el siguiente:
Paso 1: Se elige el IV (24 bits). El estándar no exige una formula concreta.
Paso 2: Se unen la clave WEP y el IV para generar una secuencia de 64 ó 128 bits. Este valor se llama RC4 Keystream.
Paso 3: Se pasa esa secuencia por un algoritmo RC4 para generar un valor cifrado de esa clave en concreto.
Paso 4: Se genera un valor de integridad del mensaje a transmitir (ICV) para comprobar que el mensaje ha sido descifrado correctamente y se añade al final del mensaje.
Paso 5: Se hace un XOR entre el mensaje y el RC4 Keystream generando el mensaje cifrado.
Paso 6: Se añade al mensaje cifrado el IV utilizado para que el destinatario sea capaz de descifrar el mensaje.
El proceso de descifrado es el inverso:
Paso 1: Se lee el IV del mensaje recibido
Paso 2: Se pega el IV a la clave WEP
Paso 3: Se genera el RC4 Keystream
Paso 4: Se hace XOR entre el mensaje cifrado y el RC4 KeyStream y se obtiene el mensaje y el ICV.
Paso 5: Se comprueba el ICV para el mensaje obtenido.
Proceso de autenticación
Cuando un cliente quiere conectarse a una WLAN ha de ser autenticado. Esta autenticación puede ser abierta; es decir, sin medidas de exigencia, para que pueda asociarse a la red, o cerrada, mediante la cual se va a producir un proceso de reconocimiento de un cliente válido.
Así, en una autenticación WEP se usa una idea muy sencilla. Si tiene la clave WEP, será capaz de devolver cifrada una trama enviada. Así, el cliente pide conectarse y el AP genera una secuencia de 128 octetos que le envía al cliente de forma cifrada. El cliente descifra esa cadena de 128 octetos y se la devuelve en otra trama cifrada con otro IV. Para que la autenticación sea mutua se repite el proceso de forma inversa, es decir, enviando el AP la petición de conexión al cliente y repitiéndose el envío de la cadena de 128 octetos cifrados del cliente al AP.
Seguridad WEP
¿Es seguro utilizar WEP entonces? Pues la verdad es que no. Hace ya años que se demostró que era vulnerable, y hoy en día romper WEP es bastante trivial, ya que en cuestión de minutos se consigue averiguar la clave WEP. El atacante sólo tiene que capturar suficientes tramas cifradas con el mismo IV; la clave WEP va en todos los mensajes. Por lo tanto, si se consiguen suficientes mensajes cifrados con el mismo IV se puede hacer una interpolación matemática y, en pocos segundos, se consigue averiguar la clave WEP. Para conseguir suficientes mensajes cifrados con el mismo IV, el atacante puede simplemente esperar, o generar muchos mensajes repetidos mediante una herramienta de inyección de tráfico. Hoy en día, para los atacantes es muy sencillo romper el WEP, porque existen herramientas gratuitas suficientemente sencillas como para obviar el proceso que realizan para romper el WEP.
Pero incluso aquí, en España, donde hay un grupo de investigación sobre seguridad inalámbrica (hwagm.elhacker.net), se han desarrollado herramientas con GUI (interfaz gráfico) para que sean más sencillas.
Una vez que se ha generado un fichero de capturas lo suficientemente amplio, se pasa por el crackeador, que va a devolver la clave WEP que está siendo utilizada.
WLANDecrypter
Para que sirva como ejemplo de lo que estamos contando, vamos a comentar una especificación concreta de redes WEP producida en nuestro país. En este caso, una compañía de televisión por Internet instala en sus clientes siempre redes inalámbricas, a las que configura como SSID un valor del tipo: WLAN_XX.
Estas redes utilizan un sistema de claves WEP sencillo que ha sido descubierto, ya que la clave está compuesta por la primera letra de la marca del router utilizado (en mayúsculas: Comtrend, Zyxel, Xavi), y la dirección MAC de la interfaz WAN del router. Además, el nombre de la red es WLAN_XX; donde XX son los dos últimos dígitos de la dirección MAC de la interfaz WAN. Como cada router tiene una asociación entre el fabricante de la interfaz inalámbrica y de la interfaz WAN, puesto que se hacen en serie y con las mismas piezas, si sabemos la MAC de la interfaz wireless también sabremos los 3 primeros pares de dígitos hexadecimales de la MAC WAN (que corresponden al fabricante).
En definitiva, con una herramienta sencilla y la captura de un mensaje de red, en pocos segundos se rompe la clave WEP de este tipo de redes.
Direccionamiento de red
Para un atacante, encontrar el direccionamiento de red (las direcciones IP válidas) que tiene que utilizar en una WLAN en la que se ha colado es también un paso trivial, que dependerá de si ésta cuenta o no con servidor DHCP habilitado:
- La red cuenta con servidor DHCP: el equipo del atacante será configurado automáticamente y no tendrá que hacer nada. En el caso de que haya suplantado una dirección MAC de un cliente, el atacante no podrá utilizar esta dirección IP porque ya está siendo utilizada por otro (ya que el servidor DHCP asigna direcciones en función de direcciones MAC), pero le servirá para ver el rango de direccionamiento que puede utilizar y la puerta de enlace.
- La red no cuenta con DHCP: El cliente se conecta con una dirección IP no valida y realiza capturas de la red con un sniffer (como Wireshark, Ethereal, AiroPeek, entre otros). En una captura con tráfico verá rápidamente cuáles son las direcciones IP que se están utilizando. Para averiguar la puerta de enlace sólo tendrá que buscar una comunicación entre un equipo interno con una IP externa, ya que obligatoriamente tendrá que pasar por la puerta de enlace, luego la MAC destino de ese mensaje será la MAC de la puerta de enlace. Basta utilizar los comandos ARP para averiguar la IP asociada a esa MAC.
802.11i, WPA y WPA2
Visto lo visto, y dado el peligro que hemos constatado en el presente artículo, es obvio que había que hacer algo con la seguridad en las redes inalámbricas. La única solución que se planteaba con este panorama consistía en realizar conexiones VPN desde el cliente que se quiere conectar a una WLAN, hasta un servidor en la red para conseguir cifrar las conexiones; es decir, tratar la WLAN como una red insegura (como Internet), y realizar un cifrado y una autenticación por encima, con los mecanismos que nos ofrecen los servidores de VPN.
El IEEE 802.11 anunció una nueva versión segura para WLAN que se llamaría 802.11i, y cambiaría los protocolos de seguridad de las WLAN. No obstante, como el proceso de aprobación de un estándar es largo, y el mercado necesitaba una solución rápida, un grupo de empresas, reunidas bajo la organización Wi-Fi Alliance crearon WPA (Wireless Protected Access) como una implementación práctica de lo que sería el próximo estándar 802.11i.
Por lo tanto, WPA será nuestro punto de partida en el reportaje del próximo mes, en el que repasaremos los mecanismos de seguridad en estos entornos, además de cómo montar infraestructuras seguras con WPA, con certificados digitales o con PEAP, entre otros. PCW
Por Chema Alonso. Ingeniero Técnico de Informática de Sistemas por la Universidad Politécnica de Madrid. Trabaja como director técnico de Informática 64, y es Microsoft MVP Windows Security.
<< Home