WPA ataque de falsificación (A Practical Message Falsification Attack on WPA)

nota aclaratoria: 

Traducción de un pdf original de la universidad de Hiroshima

Imagenes añadidas para un mejor entendimiento.

Autores: Kagamiyama, Higashi y igashi@hiroshima-u Rokkodai, Kobe-ku

Procedencia: Japón

 


Ataque práctico mensaje falsificado sobre  WPA

Toshihiro Ohigashi1 y Masakatu Morii2
Universidad de Hiroshima, Kagamiyama 1-4-2, Higashi-Hiroshima, Japón 739-8511
ohigashi@hiroshima-u.ac.jp
La Universidad de Kobe, 1-1 Rokkodai, Kobe-ku, Kobe-shi, Japón 657-8501
mmorii@kobe-u.ac.jp

Resumen

En 2008, Beck y Tews propusieron un ataque WPA. Su ataque (llamado Beck-atack Tews) puede recuperar texto plano de un pequeño paquete codificado, que a su vez se  puede falsificar. El tiempo de ejecución de un ataque de este tipo es  de 12 a 15 minutos. Sin embargo, el ataque tiene la limitación de averiguar los objetivos que estan sólo implementados con WPA IEEE802.11e (soporte QOS quality of service para multimedia).

En este artículo se propone la práctica de un ataque mensajes falsificados en cualquier aplicación con WPA.

para facilitar el ataque se hará uso de  la técnica man in the midle (hombre en el medio), en este tipo de ataque la comunicación del usuario es interceptada por el  atacante hasta finaliza el ataque Esto significa que el usuario puede detectar nuestro ataque cuando este se alarga demasiado. Por lo tanto, le damos métodos para reducir el tiempo de ejecución del ataque. Como resultado, el tiempo de ejecución de nuestro ataque se convierte en alrededor de un minuto en el mejor de los casos.

1. Introducción

Wi-Fi Protected Access (WPA) / Temporal Key Integrity Protocol (TKIP)  es un protocolo de seguridad para la comunicación LAN inalámbrica, y proporciona confidencialidad
e integridad.

WPA se ha diseñado con el fin de corregir las deficiencias  de conexión por  (WEP), que es un protocolo de seguridad utilizado en el pasado.Muchos de los productos de  una LAN inalámbrica. con cifrado WPA utilizan dos tipos de claves, que son,  un mensaje de 64 bits comprobación de integridad clave (MIC) y una clave de 128 bits. El primero se utiliza para
detectar la falsificación de mensajes falsificados y la segunda se utiliza para cifrar o descifrar paquetes. Estas claves se generan de una clave maestra compartida.

La seguridad de WPA ha sido analizada por muchos investigadores,  Moskowitz ha demostrado una debilidad de WPA en contra de un ataque de diccionario aunque al  generar una clave maestra  aleatoria durante un  largo plazo hacen que estos ataques no sean efectivos.

En 2008, Beck y Tews proponen  un ataque practico en la implementación WPA y IEEE802.11e Su ataque (llamado Beck-atack Tews) puede recuperar una clave del MIC (Message integrity code, "Michael", para protegerse contra los ataques de falsificación) y texto plano de un pequeño paquete codificado (por ejemplo, de paquetes ARP y DNS).
Falsifica el paquete cifrado con una clave MIC recuperada. El tiempo de ejecución del ataque es de unos 12-15 minutos. Es un método basado en el ataque-respuesta (desafio-respuesta), los objetivos han de estar ligados al standar IEEE802.11e QoS (quality of service).

En este trabajo, se propone una práctica de ataque de falsificación de mensajes para cualquier  aplicación WPA.

En primer lugar,  se aplica el Beck-atack Tews al hombre-en-el-medio (MITM). El ataque de Beck-Tews sobre el ataque MITM no es necesario que este apoyado por el estandar
IEEE802.11e con caracteristicas QoS, esto significa que nuestro ataque puede aplicar cualquier aplicación WPA

En segundo lugar, hablamos de una aplicación efectiva del ataque MITM para la red LAN inalámbrica. En el ataque MITM, la comunicación del usuario es interceptada por un atacante hasta que  termine. Esto significa que los usuarios pueden detectarnuestro ataque, cuando el tiempo de ejecución del ataque es grande. Por lo tanto,en tercer lugar, necesitamos métodos para reducir el tiempo de ejecución del ataque. Como resultado, el tiempo de ejecución de nuestro ataque se reduce en  un minuto en el mejor de los casos.

2. Wi-Fi Protected Access

Con WPA, la clave maestra es compartida entre un punto de acceso y un cliente. El maestro (master) genera dos tipos de claves, que son, una de  64-bit MIC (clave K *) y una de 128-bit (clave K). El cifrado de la  clave de 64 bits MIC es generada a partir de una clave de MIC y un data (dato o paquete con información relevante), yse utiliza para detectar la falsificación de mensajes.La clave de cifrado se utiliza para cifrar / descifrar los paquetes.

Procesos de Sender (remintente)
Un emisor calcula dos cosas: una MIC de una clave-mic y un MAC Service Data Unit (MSDU recibe de la LLC-sublayer  que está por encima de la sub-capa MAC en una pila de protocolos. La LLC y sub-capas MAC se conocen colectivamente como el archivo DLL), todo ello generado con el algorítmo de cifrado Michael

El MIC se añade al MSDU, de la siguiente manera:
MSDU | | micheal (K *, MSDU)

donde micheal (K *, MSDU) es una MIC de 64-bit y | | es la concatenación de las dos partes.

El MSDU con el MIC final se encuentra fragmentado dentro de  (MPDUs, Mac layer PDU), ver imagen de arriba
un checksum (control de suma) de  32-bit de control es calculado a partir de cada MPDU mediante CRC32 (cyclic redundancy check), y es añadido al MPDU,  de la siguiente manera:
MPDU | | CRC32 (MPDU)

donde CRC32 (MPDU) es una suma de control 32-bit.
El cifrado de WPA se ejecuta para cada MPDU con el checksum final. Un PK (paquete clave) es generado por un vector de inicialización de 48 bits (IV), un cifrado de

la clave k y una direccion mac utilizando una función de contro l(hash) específicas para  WPA.
Los ivs de cada MPDU son diferentes, y el valor de ivs se incrementa en uno cuando se genera de nuevo un Iv. En wpa el Iv (initial vector), es llamado TSC (TKIP sequence counter).
En wpa RC4 se utiliza como algorítmo de cifrado (sistema de cifrado de flujo, inseguro en algunos aspectos y utlizado también en cifrado wep, tls/ssl ...).


(imagen algorítmo rc4)

RC4 genera una secuencia pseudo-randomizada (llamada keystream), Z= (Z[1],Z[2],.......Z[L]) desde un paquete clave y un IV donde Z[i] es una variable  de tipo byte y [L] es la longitud del texto plano. El Keystream es XORizado con un texto plano P= (P[1],P[2],....P[L]), para obtener el texto cifrado C= (C[1],C[2],...C[L]) de la siguiente manera:

C = (MPDU ||CRC32(MPDU )) ⊕ RC4(PK, IV )

Siendo PK el paquete clave (Packet key), y vector de incializacion es IV. Un MPDU cifrado y el IV se envían al receptor. (El proceso se muestra en la figura 1).

Popular content