Les dejo la segunda parte del artículo comenzado aquí hace un tiempo. En esta “nueva entrega” voy a tratar el tema de seguridad en el sistema WEP con algunas pruebas de campo.

Todos sabemos que WEP es un sistema obsoleto y no seguro, pero resulta impresionante ver en las estadísticas mundiales de uso que aún resulte un protocolo utilizado de manera masiva. Quizá la creencia de que “si es para una red casera esta bien” sostenida años atrás aún esté en vigencia. También la desinformación juega un papel importante en este asunto; si tenemos en cuenta que cualquier hogar de medianos recursos puede adquirir insumos para el propio armado de una red inalámbrica, y para peor, estos aparatos -según mi entender- no informan al usuario como deberían, es fácil ver porqué WEP no ha pasado a la historia todavía. En el siguiente texto trataré de dejar en claro porqué WEP no debe utilizarse, ni para una red hogareña cuyas transmiciones carecen de caracter “secreto”, ni mucho menos para una empresa.

2 - ¿Es seguro el protocolo WEP?

Habiendo visto ya las características del protocolo WEP y los métodos y algoritmos de encriptación que utiliza para proporcionar seguridad en redes inalámbricas, se pondrá en enfoque en la vulneración estos sistemas para comprobar que tan (in)efectivos puedan resultar y que tanto puedan comprometer la información que circula por ella.

Si un usuario ajeno a una determinada red inalámbrica protegida por WEP es capaz de adueñarse de la clave secreta utilizada para encriptar los datos que viajan por ella, podrá visualizar el contenido de todos los paquetes enviados entre los nodos incluyendo contraseñas, números de tarjetas de crédito, mensajes de correo electrónico, etc.. Incluso este usuario será capaz de autenticarse con el punto de acceso de la red con el objetivo de utilizar el ancho de banda disponible.

2.1 - Atacando una red WEP: conceptos básicos

Para analizar las vulnerabilidades de una red de este tipo, se utilizará una técnica consistente en la captura de una determinada cantidad de paquetes enviados por los nodos que la componen, sin importar a que dirección MAC vayan dirigidos estos mensajes. Debido a que en este protocolo todos los paquetes de datos contienen encapsulado los distintos vectores de inicialización en su contenido, es posible, si se consigue la captura de suficientes mensajes cifrados, obtener la clave WEP completa mediante la combinación de la matemática estadística y los ataques de fuerza bruta. Al haber capturado una gran cantidad de paquetes cifrados, se estará en condiciones de analizarlos y elaborar estadísticamente una tabla de aquellos posibles bytes que conformen la clave WEP. Una vez realizada esta tabla, existirán algunos bytes que tengan mayores probabilidades de formar parte de la clave que otros; y es aquí donde un ataque de fuerza bruta puede agilizar el trabajo. Los ataques de fuerza bruta son comúnmente utilizados en criptografía para recuperar claves y consisten simplemente en probar todas las combinaciones posibles hasta encontrar aquella que permita el acceso. De esta forma se podrá entonces utilizar el ataque de fuerza bruta pero centrado en aquellos bytes que posean mayores probabilidades de pertenecer a la clave buscada. Un procedimiento como el descrito suele arrojar resultados en cuestión de unos pocos minutos pudiendo comprobar que el protocolo WEP no resulta para nada confiable.

El principal problema de las técnicas basadas en la captura de paquetes es que, como es lógico, deben existir paquetes en el aire para poder ser capturados. Esto puede representar un grave problema para el atacante debido a que en una red cuyo tráfico no sea abundante, pueden pasar días antes de reunir la cantidad suficiente de mensajes como para la elaboración de las estadísticas necesarias. Para solucionar esta situación, es posible generar tráfico en la red mediante ataques de inyección de paquetes. Los ataques de este tipo más comunes son:

  • Deautenticación de un cliente: este tipo de ataque demuestra en sí mismo lo poco confiable que puede resultar una red inalámbrica. La inyección consiste en generar y enviar un paquete a un cliente cualquiera en el cual se informe la desasociación de ese mismo cliente con el punto de acceso de la red asociado al mismo. El paquete enviado contendrá las direcciones MAC del punto de acceso y del cliente al cuál se desea desasociar por lo que el cliente inmediatamente producirá su desconexión de la red. Teniendo en cuenta que los sistemas operativos Windows intentan reconectarse a la red inmediatamente después de haber perdido la asociación, el objetivo de este ataque será que el cliente envié paquetes al punto de acceso para efectivizar una nueva autenticación generando así tráfico adicional en la red que sea posible capturar.
  • Reinyección de peticiones ARP: los paquetes ARP son aquellos que se envían (ARP request) desde un nodo determinado de la red mediante broadcast conteniendo la dirección IP de otro nodo que se necesite saber su dirección MAC. Luego el nodo emisor esperará a recibir la respuesta de la máquina en cuestión o de alguna otra que esté asociada a la red y posea la información requerida (ARP reply). Que el nodo emisor realice Broadcast o difusión con el paquete ARP request garantiza que todos los nodos asociados al mismo punto de acceso resultarán receptores del paquete ARP, pudiendo esperar el mensaje ARP reply de cualquiera de ellos.
    Este ataque consistirá entonces en capturar determinados tipos de paquetes (paquetes con peticiones ARP en este caso) enviados desde el cliente hacia su punto de acceso asociado para luego reenviar este mismo paquete al punto de acceso reiteradas veces. Con esto se logra que el punto de acceso genere una respuesta por cada paquete reenviado aumentando notablemente el tráfico existente en la red. En variadas pruebas se ha concluido que mediante este ataque es posible incrementar el tráfico de la red en 1024 paquetes por segundo, con lo que la elaboración de la tabla estadística necesaria para la ruptura de la clave WEP puede concretarse en cuestión de unos pocos minutos.
  • Falsa autenticación: determinados ataques de inyección de tráfico a una red requieren que exista en esa red al menos un cliente conectado al momento de realizar dicho ataque. Un ejemplo de este tipo de ataques podría ser el comentado anteriormente: Reinyección de peticiones ARP. En caso que no haya clientes disponibles siempre es posible utilizar el ataque de Falsa autenticación.
    Este tipo de ofensiva consiste en crear una MAC totalmente arbitraria para asociarla con el punto de acceso de la red logrando que esta dirección quede registrada en la tabla de asociaciones del mismo. También será posible asociar el nodo emisor del ataque con el punto de acceso enviando la dirección MAC de la tarjeta atacante en lugar de una dirección MAC creada arbitrariamente. Incluso también es posible, y en ocasiones necesario, enviar desde mensajes periódicos desde el computador atacante para informar al punto de acceso de que el nodo aún sigue en línea.
    Existe la posibilidad de que la red posea activo el filtrado de direcciones MAC. En caso que lo posea el punto de acceso solo aceptará conexiones desde algunas direcciones MAC en concreto y no de otras. Una solución para este problema consiste en realizar escaneos periódicos en la red a la espera de conexión de algún cliente. Teniendo en cuenta que en el protocolo WEP todos los paquetes contienen en su cabecera la dirección MAC del emisor y la del receptor y que además estos datos viajan en texto plano, es posible inmediatamente adquirir direcciones MAC válidas con la simple captura de algún paquete. Una vez adquirida la dirección MAC con permiso de acceso, será sencillo generar el ataque de Falsa autenticación con esa dirección o incluso es posible modificar la dirección MAC del nodo atacante a esta dirección capturada para eficientizar el ataque.

En una red cuyo flujo de datos sea abundante, sea tanto tráfico normal de la red como tráfico originado por algún ataque de inyección, es posible obtener la clave WEP en menos de media hora de trabajo. Por lo general se estima que con la captura de medio millón de paquetes con vectores de inicialización diferentes ya es suficiente para el crackeo de una clave WEP de 128 bits. Las pruebas de campo realizadas en el contexto de este Trabajo Práctico sugieren que incluso es posible descifrar una clave WEP con muchos menos paquetes con vectores distintos, y eso es lo que se analizará en la siguiente sección.

2.1.1 - Materiales necesarios para el análisis

Para realizar la auditoría de una red inalámbrica son necesarios algunos componentes especiales tanto de hardware como en software. Lo que es de importancia para resaltar en este punto es que los materiales requeridos no resultan para nada extraños ni difíciles de conseguir; cualquier persona podría adquirirlos para vulnerar maliciosamente una red inalámbrica hogareña con los peligros e inconvenientes de seguridad que dicho acto pueda conllevar.
Los materiales indispensables necesarios para tardeas de auditoría son:

  • Tarjeta de red: para poder realizar la captura de paquetes sin importar el emisor ni receptor de los mismos es necesario una tarjeta de red capaz de entrar en modo monitor y los drivers que permitan utilizarla en este modo. Las tarjetas con chipset Atheros son las más recomendadas en este sentido ya que pueden ser utilizadas para realizar auditorías tanto en Windows como en Linux. La marca de adaptadores SMC resulta muy apta para estas tareas, en especial el adaptador SMCWCBT-G de tipo Card Bus (PCMCIA) el que resulta muy versátil. Por otro lado, si la red de la que se necesita capturar paquetes no tiene tráfico, se requerirá una tarjeta capaz de inyectar mensajes en la red para aumentar la cantidad de paquetes que circulan por la misma.
  • Sistema operativo: en cuanto a sistemas operativos es indistinto utilizar Windows XP o cualquier distribución de Linux, aunque en este último se tienen mayores posibilidades de inyección de tráfico y más cantidad de tarjetas compatibles.
  • Software de captura de paquetes: como software de captura de paquetes existe el CommView en su versión WiFi 5.4 o también el conocido Airodump contenido en el paquete Aircrack. La ventaja del primero es que, si se posee un adaptador inalámbrico compatible, es capaz de instalar los drivers que permiten a la tarjeta funcionar en modo monitor automáticamente.
  • Software de análisis de paquetes: una vez capturados los paquetes será necesario analizar los mismos para realizar la tabla de estadísticas y los ataques de fuerza bruta pertinentes como ya se ha descrito. Para esta tarea se utilizan softwares como el Aircrack, contenido en el paquete con el mismo nombre.
  • Red inalámbrica: lógicamente será necesario la existencia de una red inalámbrica cuya señal sea captada por el adaptador inalámbrico en modo monitor. Para realizar las pruebas de campo se ha utilizado una red compuesta por un punto de acceso Linksys WRT54G, un solo cliente conectado y una capacidad de transferencia de 1024 megabits por segundo.

Considerando que un adaptador inalámbrico capaz de entrar en modo monitor tiene un costo aproximado de 60 dólares estadounidenses y que los softwares utilizados no tienen costo adicional, se puede concluir que el crackeo de una red inalámbrica hogareña puede ser llevado a cabo por cualquier persona poniendo en riesgo la integridad de los datos que circulan por ella.

2.1.2 - Resultados de las pruebas

Para las pruebas se han utilizado distintas velocidades de transferencia en la red como también claves WEP de distintas cantidad de bits. Lo importante para destacar es que en todas las pruebas realizadas ha sido posible obtener la clave WEP en un lapso menor a sesenta minutos entre trabajos de captura de paquetes y procesamiento del software encargado de crackear la clave.
Los resultados obtenidos arrojan:

  • Para una clave WEP de 128 bits: con un uso de entre el 90 y 100 por ciento de la red utilizada es posible capturar medio millón de paquetes con vectores de inicialización distintos en un lapso aproximado de 30 minutos. Por lo general con esta cantidad de paquetes resulta suficiente para una clave de esta longitud, pero en caso que no lo sea, es posible capturar otro medio millón de paquetes consiguiendo mayores probabilidades de obtener la clave con menor tiempo de procesamiento. El software de análisis de paquetes utilizado ha sido capaz de encontrar la clave en entre 2 y 8 minutos por lo que el proceso completo de obtención de esta clave en todos los casos ha resultado mucho menor a los 60 minutos. Incluso en determinadas pruebas se ha tenido éxito con la captura de doscientos mil paquetes con IV distintos, arrojando un tiempo total de entre 10 y 15 minutos de proceso.
    En redes con cantidad de tráfico reducido o nulo se han utilizado reinyecciones de paquetes ARP y falsa autenticación, generando así un tráfico considerable y obteniendo la suma de medio millón de paquetes en 45 minutos.
  • Para una clave WEP de 64 bits: en este caso con la cantidad de 150000 suele resultar suficiente, y en ocasiones con muchos menos también. En todos los casos de prueba se ha conseguido obtener la clave WEP en menos de cinco minutos.

3 - Conclusiones sobre el protocolo

El protocolo de encriptación WEP definitivamente no resulta para nada seguro. Como se ha podido ver en las conclusiones de las pruebas realizadas, es posible obtener la clave WEP de una red ajena en 60 minutos en el peor de los casos, ya sea si la red tiene abundante tráfico como si no lo tiene.
En el año 2001 Scott Fluhrer, Itsik Mantin, y Adi Shamir han publicado un análisis de los métodos de encriptación del protocolo WEP dando lugar al futuro surgimiento de todos los algoritmos utilizados por las aplicaciones cuyo objetivo es la obtención de una clave WEP. A partir de ese año la utilización del protocolo WEP en redes inalámbricas resulta realmente muy delicado. Aún así existen actualmente piezas de hardware que ofrecen este tipo de encriptación para asegurar las redes y en ningún momento aclaran lo poco seguro que realmente resulta. Esto sumado al poco conocimiento que poseen las personas al configurar su red hogareña inalámbrica termina siendo un verdadero peligro para la privacidad de los datos críticos de los usuarios. WEP no debe seguir siendo utilizado ya que su uso es prácticamente equivalente a tener la red sin ningún tipo de protección.

Sobre el artículo y aclaraciones

La licencia de este artículo la puedes ver aquí.