Redes Sociales

sábado, 14 de febrero de 2015

WIDS. Detección de ataques contra redes WPA y WPA2 a nivel de capa 2 (Parte 1)

El presente articulo era inicialmente un trabajo de doctorado que comencé a realizar. Al quedarse este trabajo un poco a medias, decidí aprovechar el texto escrito para publicarlo en este blog.



1.- WIDS

El objetivo del presente trabajo es el estudio de los IDS Wireless (también llamados WIDS) existentes que detecten ataques contra redes con cifrado WPA y/o WPA2.

Existen multitud de WIDS comerciales, alguno ya muy antiguos que detectan perfectamente ataques contra cifrados WEP, DoS o ataques de desautenticación o fragmentación. Lo que queremos es saber si estas soluciones nos permitirán detectar ataques contra las actuales redes inalámbricas, protegidas en su gran mayoría con cifrados WPA y WPA2.

Algunos ejemplos de WIDS comerciales existentes son:

  • AirSnare
  • WIDZ
  • AirDefense

Existentes otras soluciones de código abierto que, de hecho, son las más utilizadas como:

  • Wireless-Snort
  • SyWorks WAIPDS


2.- Tipos de cifrado en redes Wireless

Existen cuatro modos de cifrado de un red Wireless:

  • Sin cifrado: Cualquiera puede conectarse a la red wifi. Todo el tráfico circula en claro y es el mas inseguro. Aquí no hay problemas de ataques ya que cualquiera puede conectarse a redes de este tipo.
  • Cifrado WEP: Se encuentra ya casi en desuso debido a los multiples problemas existentes en su arquitectura, ya que es vulnerable en muchos puntos y ha sido crackeado de multiples formas. Algunos de los ataques usados contra el cifrado WEP son ataques de fragmentación, el ataque Caffe Latte, el ataque chop-chop (o ataque Korek), el ataque FMS [24], el ataque 1+3, el Hirte Attack, el ataque PTW [25]…. La gran mayoría de este tipo de ataques deja su huella si hay un WIDS escuchando.
  • Cifrado WPA: Se trata de un paso intermedio al cifrado WPA2. Debido a lo fácilmente “crackeable” que era el cifrado WEP se decidió publicar un nuevo estándar de seguridad para las comunicaciones Wifi. Sin embargo no se probó lo suficiente y lo que salió fue WPA. WPA sufre de varios de los problemas de WEP, aunque definitivamente es más seguro. WPA también puede sufrir ataques como el “ataque chopchop modificado”, el ataque de disasociación o los ataques tipo WLAN.
  • Cifrado WPA2: Es el estándar de cifrado recomendado actualmente. La única forma conocida de romperlo es usando ataques de fuerza bruta o con ataques a WPS. Esto por supuesto deja su huella.

Nosotros nos centraremos en los ataques a redes WPA y WPA2, que hoy en día son más del 95% de las wifis domesticas instaladas en este pais. Los ataques a redes con cifrado WEP han sido extensamente descritos en [20] [21] [22] [23] [24] y [25] y son bien detectados por los WIDS actualmente existentes.

Estos ataques contra WEP y contra las redes sin ningún tipo de cifrado quedarán fuera del ámbito de este trabajo.



3.- Los ataques contra WPA/WPA2

Los ataques sobre redes WPA y WPA2 los podemos dividir en 5 tipos:

  1. Fallos de la configuración por defecto de los APs. Son fallos en la interfaz web de los routers o en las contraseñas por defecto de las APs. Algunos ejemplos de estos fallos son:
    1. Contraseñas por defecto de redes WPA WLAN_XXXX. Las contraseñas por defecto de los routers de las redes WLAN_XXXX de Movistar de los años 2011-2013 seguían un algoritmo bien conocido. Con la aplicación WPAMagicKey era posible obtener esa contraseña, únicamente sabiendo la MAC del AP, que se envía en claro en los beacons. Estas redes han ido desapareciendo poco a poco.

    2. Contraseñas por defecto de redes VodafoneXXXX de Arcadyan. Las contraseñas por defecto de los routers de las redes VodafoneXXXX de Vodafone de los años 2013-2014 seguían un algoritmo bien conocido. Con la aplicación “VodafoneXXXX Arcadyan ESSID,PIN and WPA Generator “ es posible obtener esa contraseña, únicamente sabiendo la MAC del AP, que se envía en claro en los beacons.

      Como decía, las formas de ataque son muy variables. Desde el envío de paquetes complejos y difíciles de parsear, hasta fallos en el servidor Web de los routers. Además, las vulnerabilidades a estos niveles dan casi siempre acceso de administración al atacante.

      Otros ejemplos: El firmware de Prism2/Orinoco vulnerable a un “probe response” con longitud de SSID 0 [17]. Los drivers Broadcom para Windows eran vulnerables a un buffer overflow [18] o que los drivers Dlink para Windows eran vulnerables a un buffer overflow en las velocidades de envío [19].

      Lo cierto es que aparecen varias vulnerabilidades de este tipo cada año. Todas ellas son fáciles de detectar… a posteriori, pero es necesario tener actualizado en todo momento el WIDS. El problema consiste en que muchas veces estos problemas de configuración son locales a una zona geográfica (por ejemplo en los casos mencionados anteriormente solo afectaban a ISPs españoles proporcionando lineas de internet en España. Sin embargo las soluciones comerciales son en su inmensa mayoría americanas y no se actualizan ante problemas como los mencionados.

  2. La obtención del handshake o acuerdo de 4 vías que permite al cliente y al punto de acceso negociar las claves utilizadas para cifrar el tráfico enviado. Una vez con el handshake, obtener la contraseña mediante un ataque de diccionario.

    Para obtener el handshake, existen dos alternativas: o bien esperar a que se conecte un cliente al AP, o forzar a un cliente conectado a reconectarse.

    Una vez que se obtenga el handshake, se debe usar un diccionario lo más completo posible y se utilizarán herramientas como aircrack-ng, cowpatty o Pyrit para obtener la contraseña.

  3. La creación de redes falsas que simulen ser las originales para que los clientes se conecten a ellas y realizar ataques MITM contra ellos. Estas redes falsas , tambien conocidas como Rogue APs o como el ataque Evil Twin, se tratan realmente de un ataque MITM. Este ataque consiste en hacerse pasar por una red legítima. Si conocemos el SSID de una red y su cifrado (WEP, WPA…), datos que son públicos, y su contraseña, podremos crear una red similar con la misma contraseña. Los dispositivos se conectaran automáticamente a la red que tiene mayor potencia y muy pocos avisarán que la MAC del router ha cambiado. Los WIDS estándar detectan perfectamente los llamados “rogue APs”.

  4. WPS. El WPS es un mecanismo creado para facilitar la conexión de dispositivos a nuestra WiFi. Existen varios métodos mediante los cuales un dispositivo puede unirse a una red inalámbrica mediante WPS pero el más extendido (y el que se usa en las redes domésticas), es el intercambio de PIN. El dispositivo debe transmitir un código numérico al router y a cambio este último le envía los datos para acceder a la red.

    Es decir, si nuestro router tiene habilitada la funcionalidad WPS y queremos acceder a nuestra WiFi, simplemente tenemos que enviarle un código PIN de 8 dígitos para que el router nos permita acceder a la red inalámbrica. Habitualmente, este código PIN viene escrito en la parte inferior del router, pero existen maneras alternativas de averiguarlo.

    El problema es que el tiempo que un atacante necesita para averiguar un PIN de 8 dígitos es mucho menor que el que necesita para averiguar la contraseña WPA2 configurada en la red.

    La forma de conseguir este PIN es probando todas las combinaciones de 8 dígitos, es decir 100 millones de combinaciones. Sin embargo lo cierto es que no todas son válidas y con apenas unas 11.000 pruebas (unas 4 horas de tiempo) podría ser suficiente para acceder a la red Wifi. Por supuesto todas estas pruebas denotan un posible ataque WPS.

    La razón por la que se reduce a estas 11.000 combinaciones es que el Handshake se envía dividido en 2 mensaje, uno para los 4 primeros dígitos y otro para los tres últimos… y el ultimo carácter es el cheksum!!.

    Además, cada mensaje es validado independientemente, asi que el pin es realmente 10^4 + 10^3, es decir 11000 combinaciones.

    Este problema se conoce desde 2011 pero todavía la gran mayoría de routers siguen teniendo activado WPS, si bien algunos de ellos han añadido técnicas para evitarlo (bloqueando temporalmente el WPS si detectan multiples intentos fallidos).

    La forma de detectar estos ataques es el siguiente. El tráfico WPS legítimo debería ser muy irregular. Sólo los nuevos usuarios que se conecten a una red por primera vez lo generarían. 11.000 peticiones son muchas. No es un tráfico normal. Detectar este tráfico sería muy sospechoso. Recientemente Dominique Bongard [1] descubrió que se podía acelerar este ataque, haciendo 1 intento fallido (dejándolo a medias) y luego calculando dos códigos en el ordenador para reanudar a los pocos segundos la autenticación. Esto también deja su huella.

  5. Ataques DoS . Cuando hablamos de ataques DoS contra una red Wifi por completo, estaremos hablando o bien de Jamming o de un DoS contra el AP.Los primeros son prácticamente inevitables. Si alguien nos quiere hacer un ataque de este tipo, para solucionarlo tendremos que encontrar el Jammer y apagarlo. Los segundos, son complejos pero solucionables. Sería necesario el cambio de credenciales del router y la actualización del dispositivo. En cualquier caso los WIDS actuales detectan ambos tipos de ataques DoS, por lo que no entraran en el ámbito de este trabajo.


4.- Aplicaciones y scripts de crackeado de redes WPA y WPA2

Estas aplicaciones automatizan el crackeo de contraseña de redes Wireless. El problema es que generan mucho ruido y son fácilmente detectables. Un ejemplo es GoyScript, que facilita los ataques a redes con cifrado WEP, WPA y WPS, incluye varios diccionarios de ataque y un interfaz muy amigable que permite realizar los pasos antes mencionados de una forma automática.

Otro ejemplo muy “currado” es Linset que realiza las siguientes acciones de forma automática:
  1. Escanea la red.
  2. Permite seleccionar la red que queremos atacar.
  3. Busca handshake (se puede usar sin handshake)
  4. Monta un FakeAP imitando al original
  5. Se crea un servidor DHCP sobre el FakeAP
  6. Se crea un servidor DNS para redirigir todas las peticiones al Host
  7. Se lanza el servidor web con la interface seleccionada
  8. Se lanza el mecanismo para comprobar la validez de las contraseñas que se van a introducir.
  9. Se deautentica a todos los usuarios de la red legítima, esperando que se conecten al FakeAP e introduzcan la contraseña.


5.- Referencias

[1] http://es.slideshare.net/0xcite/offline-bruteforce-attack-on-wifi-protected-setup
[2] Wireless Intrusion Detection System Using a Lightweight Agent, 2010, http://www.qpic-kw.com/uploads/downloads/05474532.pdf
[3] WHIFF – Wireless Intrustion Detection System, McAffee, 2003, http://www.mcafee.com/it/resources/white-papers/foundstone/wp-whiff-wireless-intrusion-detect.pdf
[4] Wireless Intrusion Detection Systems, 2010, Symantec, http://www.symantec.com/connect/articles/wireless-intrusion-detection-systems
[5] Intrusion Detection Systems Challenges for Wireless Network, Febrero 2012, Manish Kumar et al., http://www.ijera.com/papers/Vol2_issue1/AQ21274280.pdf
[6] Wireless Intrusion Detection and Response, Yu-Xi Lim et al, Junio 2003, http://users.ece.gatech.edu/owen/Research/Conference%20Publications/wireless_IAW2003.pdf
[7] Wireless Snort – A WIDS in progress, Craig Valli, http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.59.5498&rep=rep1&type=pdf
[8] A Closer Look at Wireless Intrusion Detection, Aruba networks
[9] Applying Wired IDS History to Wireless IDS, Joshua Wright, 2000, http://www.willhackforsushi.com/papers/ids-wids-history.pdf
[10] Anomaly Intrusion Detection System in Wireless Sensor Networks: Security Threats and Existing Approaches, Safiqul Islam, Noviembre 2011, http://www.sersc.org/journals/IJAST/vol36/1.pdf
[11] Wired and wireless intrusion detection system: Classifications, good characteristics and state-of-the-art, Tarek S. Sobh, Septiembre 2006,
[12] Applying Intrusion Detection Systems to Wireless Sensor Networks, Rodrigo Roman et al, 2006, http://www.lcc.uma.es/~roman/files/roman-ccnc06.pdf
[13] EWIDS: An Extended Wireless IDS for Metropolitan Wireless Networks Based on Kinematical Analysis, Luci Pirmez et al, Julio 2011, http://paper.ijcsns.org/07_book/201107/20110702.pdf
[14] HoneySpot:The Wireless Honeypot, Raul Siles, Diciembre 2007, http://honeynet.org.es/papers/honeyspot/HoneySpot_20071217.pdf
[15] Addressing Wireless Threats with Integrated Wireless IDS and IPS in the Cisco Unified Wireless Network, CISCO, http://www.technology- resources.co.uk/white-paper/wireless-networking-wlan-wi-fi/4319/addressing-wireless-threats-with-integrated-wireless-ids-and-ips-in-the-cisco- unified-wireless-network/
[16] Comparative Analysis of IDS Algorithms for Wireless Sensor Networks, Harshal A. Arokar et al, Marzo 2011, http://www.bvicam.ac.in/news/INDIACom%202011/39.pdf
[17] 802.11b Firmware-Level Attacks, http://www.willhackforsushi.com/papers/firmware_attack.pdf
[18] Broadcom Wireless Driver Probe Response SSID Overflow http://www.securiteam.com/exploits/6P00H1FHFA.html
[19] D-Link DWL-G132 Wireless Driver Beacon Rates Overflow http://www.securiteam.com/exploits/6O00G1FHFY.html
[20] Atacando WEP sin AP o ataque Caffe Latte. http://highsec.es/2013/09/atacando-wep-sin-ap-o-ataque-caffe-latte/
[21] KoreK chopchop. http://www.aircrack-ng.org/doku.php?id=es:korek_chopchop
[22] Ataques contra WEP – Ataque de Fragmentación. http://thehackerway.com/2012/04/20/wireless-hacking-ataques-contra-wep-ataque-de- fragmentacion-parte-x/
[23] Ataques contra WEP – Hirte Attack. http://thehackerway.com/2012/04/25/wireless-hacking-ataques-contra-wep-hirte-attack-parte-xi/
[24] FMS Attack on RC4. http://www.cs.rit.edu/~axl6334/crypto/Report.pdf
[25] Attacks on the WEP protocol. http://eprint.iacr.org/2007/471.pdf
[26] An Inexpensive Wireless IDS using Kismet and OpenWRT. SANS. https://www.sans.org/reading-room/whitepapers/wireless/inexpensive-wireless-ids-kismet-openwrt-33103

No hay comentarios:

Publicar un comentario