11 de noviembre de 2008

WPA-PSK (TKIP) Owned

Hace unos días hablábamos de casos no contemplados y esta mañana me he despertado con uno de ellos. ¿Recordais el ataque Chop-Chop contra cifrados WEP? La suite de aircrack incluye en aireplay un ataque específico “Chop-Chop”, del cual podemos ver un ejemplo aquí.

Resumiendo mucho, este ataque eliminaba un byte de la trama cifrada con WEP y creaba un mensaje válido aplicando una modificación relacionada directamente con el byte sin cifrar. Korek fue el primer hacker en implementar este ataque por inducción. La metodología es sencilla, prueba y error hasta obtener el valor correcto de la trama descifrada (partiendo de ese primer byte que “cortabamos”). Los que habitualmente leéis a Security Art Work (sindicada en este blog) podréis ampliar la información con el proyecto de fin de carrera que Roberto Amado publicó a raíz de la “polémica” suscitada con la roptura de WPA2 valiéndose de GPUs que llegó a meneame, con lo que ello suele significar.

Bien, una variante del Chop-Chop ha permitido obtener una vulnerabilidad nueva en WPA-PSK (TKIP) que, como sabemos, es un WEP modificado que implementa muchas de sus funcionalidades para el cifrado (eso sí, corregidas). Esto ha provocado el primer ataque que no es por “fuerza bruta” ni de denegación de servicio contra WPA. Los requisitos para su ejecución son los siguientes:
  • La red a atacar debe usar TKIP (WPA).
  • IPv4 es necesario, a su vez es necesario conocer la mayor parte de los bytes de la dirección de red. Ejemplo: 192.168.1.X
  • El refresco de claves de TKIP debe ser alto (3600 segundos, indican).
  • La red debe soportar los atributos de QoS que marca el iEEE 802.11e (esto es lo más importante).

Voy a resumir muy brevemente el ataque, intentaré que sea de forma sencilla, por que es bastante complicado. El atacante esnifa tráfico ARP (aircrack los detecta por que tienen una longitud reconocida). Observando y conociendo la direcciones de red de origen y destino que no son cifradas, excepto el último byte (así está implementado) junto con los 8 bytes de MICHAEL y MIC (sirven para comprobar que el paquete no ha sido modificado) y el checksum del ICV y a sabiendas de que el comportamiento de TKIP rechaza los paquetes con:

  • ICV incorrectos.
  • MIC incorrecto à en este caso se asume que ha ocurrido un ataque, si hay más de 2 en 60 segundos se renegocian las claves.
  • TSC inferior al contador actual (WPA incorpora un contador de paquetes para evitar que los viejos sean reenviados, etc.)

Y, sabiendo que si un atacante realiza un ataque en un canal diferente al punto de acceso, por ejemplo, adivinando ese byte que habíamos cortado anteriormente y que está cifrado, el punto de acceso informará de que existe un error de MIC, pero no incrementará el TSC. Luego tras 60 segundos podrá probar otra combinación y, en 12 minutos descifrará 12 bytes de texto plano.

Con ello y realizando un ataque a la inversa al algoritmo MICHAEL el atacante puede obtener la clave MIC usada para proteger los paquetes que son enviados desde el punto de acceso al cliente.

Un lío, lo sé. Pero esto desencadenaría varias vulnerabilidades que harían desaconsejable WPA-PSK (TKIP). Se puede leer en el paper que existe una versión de aircrack que incorpora ya el ataque, pero todavía no está disponible, luego se puede entender conforme se refine este ataque y se creen los correspondientes exploits, que WPA-PSK (TKIP) se encuentra en la milla verde, a la espera de que alguien lo remate con un ejemplo práctico.

Dada la similitud con el Chop-Chop de WEP, no le doy mucho tiempo.

Salu2!

PD: Sé que este Post es muy técnico, pero casi todos los acrónimos utilizados pueden encontrarse fácilmente en Wikipedia, etc. Comprended que tardaría eones en explicarlas todas, y se haría demasiado pesada la entrada. No obstante con las referencias dadas a buen seguro el lector interesado en profundizar podrá hacerlo sin problema.

2 comentarios:

Thor dijo...

Buena descripción! Ojala algún día pueda meterme con el protocolo WEP, WPA y entender a "bajo nivel" que es lo que ocurre para que se den estos ataques.

Un saludo!

GigA ~~ dijo...

Wenas Thor! Despues de ver las vueltas a la cabeza que le diste al reto de S21, y lo que trapicheas con Acunetix, estoy bastante seguro de que WEP y WPA es solo "echarle un vistazo" para ti.

Te recomiendo la lectura del PFC que pongo en la entrada, la verdad está muy bien redactado y es ameno de leer. Un buen manual de 802.11 :)

Gracias por escribir!