martes, octubre 17, 2017

KRACK Attack o cómo reventar WPA2 y de paso nuestra confianza en la seguridad WiFi

Uno de los pocos bastiones que aún quedaban hoy día en la seguridad WiFi con más de 14 años en funcionamiento, nuestro querido protocolo WPA2, acaba de ser vulnerado. Esta es la primera vulnerabilidad que se ha encontrado en este protocolo durante todo ese tiempo que ha estado implantado, pero es lo suficientemente crítica como para activar todas las alarmas y no es para menos, ya que hasta el momento solo existían ataques de fuerza bruta a las claves de cifrado en modo WPA2-PSK [Atacar WPA/WPA2-PSK & Crackear WPA/WPA2-PSK], que se podían evitar con relativa normalidad mientras no llegasen los afamados equipos cuánticos.

Figura 1: KRACK Attack o como reventar WPA2 y de paso nuestra confianza en la seguridad WiFi

Explotar esta vulnerabilidad podría permitir a un atacante dentro del rango de la WiFi, insertar un virus a la red o incluso interceptar cierto tipo de comunicaciones y por lo tanto, tener acceso a información sensible que hasta ahora considerábamos segura. Además, afecta a todas y cada una de las redes WiFi actuales protegidas y a todos los dispositivos que utilicen dicho protocolo, y esto significa un gran agujero de seguridad para los entornos domésticos y empresariales, lo que harán tensar a los equipos de seguridad de las compañías con planes específicos.

Esta vulnerabilidad ha sido encontrada recientemente por el investigador Mathy Vanhoef, de la universidad belga KU Leuven, que ha bautizado como KRACK, Key Reinstallation Attacks. Afecta en una u otra manera a cualquier plataforma como Android, Linux, Windows, OpenBSD, MediaTek, Linksys, etc.... El paper será presentado formalmente en la conferencia CCS, Computer and Communication Security el día 1 de Noviembre.

Figura 2: Paper de KRACK ATTACK

La única prueba que tenemos hasta ahora donde se pueda confirmar que esta vulnerabilidad puede ser explotada, es la demostración PoC que ha realizado y que ha publicado en su blog a modo de vídeo. Dicha PoC se basa en un ataque KRACK contra un dispositivo Android, donde el atacante es capaz de descifrar la información que están transmitiendo la víctima (al parecer KRACK es especialmente efectivo contra Linux y Android 6.0 o superior). De hecho, cuando se utilizan otras plataformas, es más complicado de descifrar todos los paquetes e incluso algunos no se pueden descifrar. Éste es el vídeo donde se puede observar el ataque en funcionamiento:


Figura 3: PoC de KRACK ATTACK

El eje principal vector del ataque se centra en four-way handshake del protocolo WPA2. Resumiendo, este procedimiento (handshake) se utiliza para comprobar las credenciales cuando un usuario está intentando unirse a una red WiFi. Durante este proceso se generan claves nuevas de cifrado, las cuales se instalan después de recibir el Mensaje 3 de los 4 y que sirven para proteger la sesión del usuario que está intentando conectarse a la WiFi. Los Mensajes se definen mediante tramas tipo EAPOL (EAP over LAN) las cuales tienen la siguiente estructura:


Figura 4: Formato simplificado de una tram EAPOL mostrado en el paper de KRACK ATTACK

La vulnerabilidad que explota KRACK permite al atacante manipular o repetir de nuevo este tercer Mensaje, permitiendo reinstalar la clave criptográfica que ya se ha utilizado. Y esto es importante para poder salvaguardar la seguridad del protocolo WPA2 ya que una clave criptográfica sólo puede ser utilizada una vez durante este proceso. El paper publicado explica en detalle todo el procedimiento KRACK. Éste sería un resumen simplificado del ataque:
1. El atacante intenta unirse a una red WiFi. 
2. Comienza el proceso four-way handshake. 
3. Se negocia una nueva clave de cifrado en el Mensaje 3 del proceso. 
4. No se envía la señal de acknowledgment (reconocimiento) que verifica que se ha recibido el Mensaje 3 correctamente. 
5. Esto fuerza que el punto de acceso (AP) retrasmita de nuevo el Mensaje 3 varias veces. 
6. Este proceso repetido varias veces, siempre instalará la misma clave de cifrado y por lo tanto reseteará a cero nonce (número aleatorio el cual precisamente se encarga de evitar que se pueda repetir ataques y que actúa como contador de los paquetes transmitidos, ver figura 4). 
7. El atacante puede en este punto forzar estos reseteos nonce recolectándolos y repitiendo retrasmisiones del Mensaje 3. 
8. Reutilizando estos nonce es posible repetir los paquetes y descifrarlos ya que la misma clave de descifrado se utiliza con valores nonce que ya se han utilizado en el pasado (reutilizando los llamados “keystream” cuando se cifran paquetes). 
9. En función del análisis de los paquetes descifrados, sería posible insertar un programa malicioso en la red o simplemente analizar el tráfico generado por los usuarios de la red.
Ahora mismo no existe ningún parche de seguridad que pueda solucionar este problema (así que atentos para cuando salgan). De momento, el CERT ha enviado un comunicado advirtiendo del problema, así como un listado del hardware y el software afectado (ojo a los fabricantes afectados, CISCO, Google o Apple son sólo algunos de ellos). Prácticamente cualquier dispositivo que tenga WiFi tendrá que ser parcheado, desde dispositivos móviles pasando por routers.

Figura 5: Flujo del proceso "4-way handshake" y en rojo Mensaje 3, donde KRACK efectúa su ataque

¿Y qué podemos hacer para protegernos? De momento esperar a que aparezca algún parche para cada uno de los dispositivos. Cambiar de router o de contraseña de la WiFi no ayudará. La única protección fiable que tenemos es utilizar VPNs dentro de nuestra red o utilizar siempre cifrado SSL/TLS (páginas web HTTPS por ejemplo). Por otro lado, parece que Microsoft se ha dado prisa y ya tiene un parche para solucionar este problema para Windows.

Figura 6: Parche para KRACK Attack de Microsoft

Para terminar, no podemos olvidar que los dispositivos afectados no se limitan a portátiles y ordenadores de empresas o de usuarios particulares. También tenemos que tener en cuenta que otros dispositivos más cotidianos como televisiones, relojes o incluso coches también están afectados por esta vulnerabilidad. Y mucho más preocupante podría ser pensar en ¿cuántos dispositivos IoT utilizan WPA2 dentro de redes WiFi pertenecientes a procesos industriales? Esperemos que todos los fabricantes se den prisa en aplicar los parches correspondientes lo antes posible, porque de momento, el poder parece que lo tienen sólo los chicos buenos …

Autor: Fran Ramírez (@cyberhadesblog) escritor de libro "Microhistorias: anécdotas y curiosidades de la historia de la informática" e investigador en ElevenPaths

12 comentarios:

eche dijo...

Contra esto, usar cifrado SSL va a dar igual, ¿no? En la demostración entra a una página HTTPS y aún así consigue aprovecharse de la vulnerabilidad.

Un saludo,

DaniH dijo...

Pero lo que si que hay que tener precaución es en ver que, efectivamente la página es https, y que no se haya, mediante el sslstrip, anulado.

Anónimo dijo...

el protocolo tiene varios años, y es muy estudiado...habria que tener cambios en 802....
y si, un desastre con IoT, muchas cosas, camaras web, aires acondicionados, y muchos aparatos con wifi, fabricados en serie, sin marca, son todos riesgosos
Esperemos que ahora se den cuenta
Hay que asustarse, para reaccionar??
vamos con el hacking de humanos!
:(
saludos, Mechas

Unknown dijo...

A mi me encantaria ser atacado antes del 1 de noviembre por esta vulnerabilidad. Al menos sabría que tengo el privilegio de ser victima de un hacker de alto nivel.
Después haría todo lo posible por aprender de él. LOL

JCNSYSTEM SoftWare y HardWare dijo...

Muy buen articulo. Bien explicado y entendible. Las comunicaciones SSL creo que son por ahora seguras. Sirve para espiar pero ¿ La pass en si de la wifi no se obtiene? ¿Esto al vecino no le vale para nada puesto que no podra conectarse a nuestra wifi? Creo que es importante tener esta deficiencia en cuenta y que se revise el protocolo de comunicacion y negociacion de key para solucionarlo pero al vecino no le valdra para nada si no se puede conectar a la wifi de su otro vecino gratis... y eso es normalmente lo que se buscaba en las auditorias vecinales ( no es las profesionales claro) y que da realmente miedo.

JCNSYSTEM SoftWare y HardWare dijo...

Muy buen articulo. Bien explicado y entendible. Las comunicaciones SSL creo que son por ahora seguras. Sirve para espiar pero ¿ La pass en si de la wifi no se obtiene? ¿Esto al vecino no le vale para nada puesto que no podra conectarse a nuestra wifi? Creo que es importante tener esta deficiencia en cuenta y que se revise el protocolo de comunicacion y negociacion de key para solucionarlo pero al vecino no le valdra para nada si no se puede conectar a la wifi de su otro vecino gratis... y eso es normalmente lo que se buscaba en las auditorias vecinales ( no es las profesionales claro) y que da realmente miedo.

Unknown dijo...

Excelente articulo

Unknown dijo...

Muy buen artículo. La pregunta que se me viene a la cabeza ahora es, ¿Cuándo sacará, Telefónica, un firmware protegido, para los Routers de fibra (HGU)?

jamesjss dijo...

Si se actualiza el router, ¿el movil estará protegido sin actualizarlo? ¿O hay que actualizar los dos?

Yordi Aos dijo...

Tengo la misma pregunta :(

kaszyux dijo...

Hay que actualizar ambos sino sigues siendo vulnerable....

Alain Vega Labrada dijo...

Cuando tardara esta tecnica en completarse con algo como linset que muto a fluxion o a wifiphiser o wifi punking, para mediante dns falsa llevar a la victima hacia un sitio de phising donde comprometa la contraseña de su wifi y esta sea verificada por aircrack y el handshake capturado. Todo POC llega a ser no POC :). Claro esta los sitios con HSTS y ssl bien implementado bien a echar abajo el phising pero creo que es mas practico que pasar un diccionario de fuerza bruta a un handshake.

Entrada destacada

10 maneras de sacarle el jugo a tu cuenta de @MyPublicInbox si eres un Perfil Público

Cuando doy una charla a algún amigo, conocido, o a un grupo de personas que quieren conocer MyPublicInbox , siempre se acaban sorprendiendo ...

Entradas populares