Calificación:
  • 14 voto(s) - 5 Media
  • 1
  • 2
  • 3
  • 4
  • 5

[-]
Etiquetas
y wpa seguridad al contra wep practicos ataques noticia descubierto

Noticia Seguridad: Ataques practicos contra WEP y WPA - WPA al Descubierto !!!
#1
Hace solo unos dias hice comentario sobre una noticia que me sorprendia...
Noticia: WPA, tocado en 15 minutos y sin diccionario !!!

El ataque en 15 minutos y sin diccionario lo debemos a Erik Tews y Martin Beck

Los cuales ya han publicado la Vulnerabilidad al detalle, con formulas y extensas explicaciones del proceso, asi como sus datos de contacto, desde luego esta información no tiene desperdicio.

*** EN EXCLUSIVA PARA ZERO13WIRELESS.NET ***

Wink

Martin Beck, TU-Dresden, Germany
<horte@aircrack-ng.org>
Erik Tews, TU-Darmstadt, Germany
<e_tews@cdc.informatik.tu-darmstadt.de>

8 Noviembre 2008

Fuente Original de la Info: http://altctrlsupr.net

Original publicado en http://dl.aircrack-ng.org/breakingwepandwpa.pdf
Traducido con permiso de sus autores

Rev.10-19 Noviembre 2008

En este papel, describimos dos ataques sobre LANs[1] basadas en el estandar inalambrico IEEE 802.11. El primero es un ataque de recuperacion de clave WEP mejorado, el cual reduce el numero total de paquetes que un atacante debe interceptar para recuperar la clave secreta. El segundo ataque (segun nuestro conocimiento) es el primer ataque practico a redes inalambricas aseguradas con WPA, lanzando un ataque de diccionario cuando se usa una clave pre compartida (PSK) debil. El ataque funciona si la red esta usando TKIP para cifrar el trafico. Un atacante, que tenga alrededor de 12-15 minutos de acceso a la red es capaz de descrifrar una peticion o respuesta ARP y enviar 7 paquetes con contenido a medida a la red.

1 Introduccion

IEEE 802.11[2] es una familia de estandars para las redes inalambricas. Este tipo de redes se pueden encontrar en hogares, oficinas y entornos empresariales y son bastante populares hoy en dia. Si se transmite informacion sensible sobre una red inalambrica, la privacidad y la integridad se convierten en una preocupacion y se deben tener en cuenta.
La primera version del estandar IEEE 802.11 soportaba un mecanismo basico para proteger estas redes llamado Wired Equivalent Privacy (WEP, Privacidad Equivalente a la Cableada). WEP requiere que todos los clientes y puntos de acceso de la red compartan hasta cuatro claves simetricas diferentes, lo cual es claramente no optimo para una instalacion grande donde los usuarios cambien frecuentemente.

La mayoria de instalaciones simplemente usan una unica clave compartida llamada root key (clave maestra). WEP tiene algunos grandes fallos de diseño y fue completamente roto en 2001[4,13] por Fluhrer, Mantin y Shamir. Ellos nos enseñaron que un atacante puede recuperar la clave secreta de la red con un ordenador portatil convencional en 1-2 horas. Ataques mas avanzados se han ido publicado en los ultimos años, haciendo posible la recuperacion de la clave secreta de la red en menos de 60 segundos[15].

Para arreglar los problemas de WEP, un nuevo estandar llamado Wi-Fi Protected Access (WPA) fue lanzado en 2003, ahora parte de las especificaciones IEEE 802.11.[2].

La estructura de este papel es la siguiente: En la Seccion 2, ofrecemos una introduccion a los detalles tecnicos de WEP y WPA e introducimos la notacion usada en el resto de este papel. En la Seccion 3, ofrecemos un repaso a una seleccion de ataques sobre WEP. En la Seccion 4, presentamos un nuevo ataque sobre WEP, el cual reduce el numero de paquetes que un atacante necesita interceptar para recuperar la clave raiz secreta comparado a ataques previos. En la Seccion 5, presentamos un nuevo ataque sobre WPA, el cual permite a un atacante, que tenga entre 12-15 minutos de acceso a la red protegida con WPA, enviar 7 paquetes a la red con el íƒÆ’í‚¢íƒÂ¢í¢â‚¬Å¡í‚¬íƒâ€¹í…“payloadíƒÆ’í‚¢íƒÂ¢í¢â‚¬Å¡í‚¬íƒÂ¢í¢â‚¬Å¾í‚¢ elegido y descifrar un solo paquete ARP[11]. Segun nuestro conocimiento, este es el primer ataque practico sobre redes protegidas con WPA, ademas de lanzar un ataque de diccionario contra una clave pre compartida debilmente elegida.

2. Notacion

Los numeros estan siempre escritos en notacion decimal, por ejemplo 12 es el numero doce. Los signos + y · son adicion (suma) y multiplicacion. (Z/nZ)+ es el grupo aditivo de los numeros 0 a n-1, donde todas las adiciones se hacen mod n. Cuando se acaban las operaciones en (Z/nZ)+, escribimos a+b como una forma corta de a+b mod n. Para arrays, usamos la notacion [·] al igual que en muchos lenguajes de programacion como C o Java. El primer elemento en el array S es S[0]. Las permutaciones tambien se escriben como arrays. Si S es una permutacion, S-1 es la permutacion inversa. Por ejemplo, si S[i]=j, entonces S-1[j]=i. Cuando dos arrays A y B se concatenan a un nuevo array C, escribimos C=A||B. F2 es el campo finito con solamente los dos elementos 0 y 1. F2[X] es el anillo de polinomios sobre F2. Al especificar estimaciones para una probabilidad de suceso o cosas similares, usamos el signo [Imagen: awwsigno.jpg] para notar que una formula o un valor es solamente una buena aproximación, pero no absolutamente acertada.

Debido a que WEP esta mayormente basado en cifrado de flujo RC4[12], necesitamos introducir una notacion para analizar el flujo de cifrado RC4. RC4 consiste de dos algoritmos, el RC4-KSA, el cual transforma una clave de longitud 1 a 256 bytes en una permutacion inicial S de los numeros 0 a 255. El estado interno de RC4 consiste de esta permutacion S y los dos numeros i y j usados como punteros a los elementos de S. El RC4-PRGA genera un unico octeto de keystream de tal estado y actualiza el estado.
Para analizar el cifrado, escribiremos Sk y jk para el estado de S y j, despues de exactamente k vueltas al bucle comenzando la ejecucion en la linea 5 del Listado 1. Para hacer el papel mas legible, escribimos n para el valor constante 256. De acuerdo a esto, escribimos Sk+n y jk+n para el estado de S y j, despues de que el estado haya sido inicializado por el algoritmo del Listado 1 y exactamente k octetos de salida se hayan producido por el algoritmo del Listado 2. Cuando se utiliza una clave K para RC4 y un keystream X de longitud arbitraria se produce, escribimos X=RC4(K). Por favor notese que un atacante que sepa los primeros k octetos de una clave RC4 K tambien conoce Sk y jk.

En una red protegida con WEP, todas las estaciones normalmente comparten una unica clave simetrica Rk llamada clave raiz. Un unico paquete puede perderse facilmente en una red IEEE 802.11 debido a un error de transmision, por lo que WEP necesita cifrar todos los paquetes independientemente. Ya que RC4 no soporta un vector de inicializacion por si mismo, WEP genera una clave por paquete para cada paquete. A vector de tres octetos IV se elige añade al principio de la clave raiz Rk el cual resulta en la clave por paquete K=IV||Rk. Un keystream X=RC4(K) se genera de K. Para proteger la integridad de los datos transmitidos, un checksum CRC32 de 32 bits de largo llamado ICV se añade a los datos. El texto plano resultante es cifrado mediante XOR el texto plano (incluyendo el CRC32 checksum) con el keystream generado. El texto cifrado junto con el correspondiente vector de inicializacion IV sin cifrar es enviado por el aire.

WEP originalmente solo especificaba una clave secreta de 40 bits Rk, pero la mayoria de comerciantes implementaron un modo adicional donde Rk tenia una longitud de 104 bits. La longitud de las claves por paquete correspondientes eran 64 o 128 bits, y estas variantes fueron mayormente comercializadas como WEP de 64 o 128 bits. Nosotros nos restringimos a la variante de 104 bits, pero nuestros ataques pueden adoptarse facilmente para redes con diferentes longitudes de clave con onicamente modificaciones menores.

[Imagen: atacwepwpa11.jpg]

3 Ataques previos sobre WEP


Numerosos ataques sobre WEP se han publicado en el pasado.

3.1 El ataque FMS

Fluhrer, Mantin y Shamir publicaron[4,13] el primer ataque de recuperacion sobre WEP en 2001. Su ataque se baso en las siguientes ideas: Un atacante que escuche pasivamente el trafico de una red protegida con WEP puede grabar un monton de paquetes cifrados incluyendo los vectores de inicializacion usados por dichos paquetes. Debido a que los primeros octetos de la mayoria de paquetes son predecibles facilmente, el atacante es capaz de recuperar los primeros octetos de los keystreams empleado para cifrar estos paquetes. Todos los octetos siguientes de una clave por paquete son los mismos para todos los paquetes, pero son inicialmente desconocidos para el atacante.

Asumamos que un atacante conoce los primeros l bytes de una clave RC4 usada para generar un keystream X. Podra simular los primeros l pasos del RC4-KSA y conocer Sl y jl. En el paso siguiente del RC4-KSA, jl+1 = jl+K[l]+Sl[l] y Sl[l] es intercambiada con Sl[jl+1]. Si el atacante pudiese revelar Sl+1[l], podria facilmente recuperar K[l] calculando la diferencia entre Sl-1[Sl+1[l]]-jl-Sl[l]. Fluhrer, Mantin y Shamir utilizaron el siguiente truco para revelar este valor:

Asume que la siguientes condiciones permanecen despues de los primeros l pasos del RC4-KSA:

[Imagen: atacwepwpa2.jpg]

En el siguiente paso del RC4-KSA, un valor k=Sl[jl+1] sera intercambiado con Sl+1[l]. Si j cambia aleatoriamente para el resto del RC4-KSA, los valores S[1],S[S[1]], y S[l] no seran alterados con una probabilidad de aproximadamente (1/e)3 durante el restante RC4-KSA.

Cuando se produce el primer octeto de salida por el RC4-PRGA, j tomara el valor Sn[1], y Sn[1] y Sn[j] se intercambian. Tras el intercambio, S[1]+S[S[1]]=l todavia permanece y el primer octeto de salida del RC4-PRGA X[0] sera S[l]. Si las condiciones 3 o 4 no se mantuvieran, esto indicaria que S[1] o S[S[1]] han sido alterados. En pocas palabras, si estas cuatro condiciones se mantienen, la funcion:

[Imagen: atacwepwpa3.jpg]

tomara el valor de K[l] con una probabilidad de alrededor (1/e)3 aprox 5%. Nos referiremos a este conjunto de condiciones unidas en esta funcion como una correlacion para RC4. Fluhrer, Mantin y Shamir se referian a estas condiciones (o al menos a las dos primeras) como la condicion resuelta.

Un ataque de recuperacion completa de la clave WEP se puede construir usando esta correlacion. Un atacante captura paquetes de una red protegida con WEP y recupera el primer octeto de keystream usado para cifrar esos paquetes adivinando el primer octeto de texto plano. Hay tambien varias tecnicas activas para generar trafico en una red protegida con WEP incluso sin clave, lo que permite la recuperacion de mas de los primeros 1000 octetos de keystream por paquete[1]. Selecciona los paquetes donde la condicion resuelta permanece y calcula Ffms para esos paquetes. Cada resultado de Ffms puede verse como un voto para el valor de Rk[0]. Despues de haber capturado suficientes paquetes, el atacante toma una decision respecto al valor de Rk[0] basada en el numero de votos generados por Ffms. Si la decision fue correcta, el atacante conoce el primer l=4 octetos de todas las claves por paquete y puede continuar con Rk[1]. Por favor notese que todos los paquetes necesitan reevaluarse en cuanto la condicion resuelta permanece, ya que esta comprobacion depende del valor de Rk[0]. Una vez se hayan determinado todos los octetos de Rk, el atacante comprueba que la clave resultante sea correcta utilizando un numero de descifrados de prueba. Si la clave es correcta, el atacante lo ha conseguido. Si la clave resultante es incorrecta, el atacante busca una decision para Rk[i], donde un valor alternativo para Rk[i] seria tambien muy deseable. El atacante corrige la decision el arbol de decisiones a profundidad i y continua el ataque con la decision alternativa.

Aunque la probabilidad de suceso del 5% de Ffms parece impresionante, el ataque necesita entre 4.000.000 y 6.000.000 de paquetes para conseguir una probabilidad de suceso de al menos el 50%, dependiendo del entorno exacto y de la implementacion [14,13]. La razon para esto es que la condicion resuelta permanece solamente para un pequeño numero de vectores de inicializacion elegidos aleatoriamente.

3.2 El ataque KoreK

En 2004, una persona bajo el seudonimo de KoreK posteo[9,3] una implementacion de una avanzada herramienta de crackeo WEP en un foro de internet. KoreK utilizo 16 correlaciones adicionales entre los primeros l octetos de una clave RC4, los primeros dos octetos del keystream generado, y el siguiente octeto de la clave K[l]. La mayoria de estas correlaciones habian sido encontradas por el propio KoreK, unas pocas habian sido discutidas[5] en publico con anterioridad. KoreK asigno nombres como A_u15 o A_s13 a estos ataques, el ataque FMS original es llamado A_s5_1 aqui.

Practicamente todas las correlaciones encontradas por KoreK usaban el planteamiento que el primer o segundo octeto del keystream revelan el valor de jl+1 bajo ciertas condiciones, si 2-4 valores en S tienen una constelacion especial y no cambian durante el restante RC4-KSA despues del paso l+1. Una excepcion interesante es la correlacion A_neg, la cual no vota por un cierto valor de K[l]. En vez de esto un valor puede excluirse de la lista de posibles candidatos para K[l], lo que puede verse como un voto negativo para K[l].

La estructura completa del ataque es el mismo arbol bassado en decisiones aproximadas que para el ataque FMS. El numero de paquetes capturados se reduce de alrededor de 700.000 para una probabilidad de suceso del 50%[14]. De nuevo, la exactitud de los numeros depende del entorno exacto y de la implementacion y parametros usados para el ataque. Un factor importante es que si los vectores de inicializacion son generados por un algoritmo PRNG o si son generados secuencialmente por un contador.

3.3 El ataque PTW

En 2007, una nueva generacion de ataques WEP fueron publicados[15,14] por Tews, Weinmann y Pyshkin. Su ataque introdujo dos nuevos conceptos:

1. Todas las correlaciones previas utilizadas requerian que 2-4 valores en S no cambiasen durante el restante RC4-KSA. Tambien tenian un monton de condiciones previas que necesitaban mantenerse para usar la correlacion. Con lo cual, solamente un pequeño numero de paquetes podria usarse para votar un cierto octeto de la clave.

En 2005, Klein mostro[7] que l-X[l-1] toma el valor de S[l] con una probabilidad de 2/n. Si Sl[l] permanece inalterado hasta que se produzca X[l-1], la funcion:

[Imagen: atacwepwpa4.jpg]

toma el valor de K[l] con una probabilidad de 2/n. Este resultado es tambien conocido como la correlacion Jenkins[6]. Sl[l] permanece inalterado con una probailidad de aproximadamente 1/e. Si Sl[l] ha sido modificado antes de que se produzca X[l-1], FKlein toma un valor mas o menos aleatorio. En total, esto resulta en la siguiente probabilidad de que FKlein tome el valor de K[l]:

[Imagen: atacwepwpa5.jpg]

Esta correlación no hace requerimientos al estado interno de RC4 o del keystream, por lo que se puede usar cada paquete.

2. El segundo concepto nuevo es un cambio en la estructura del ataque. Hasta ahora, cada ataque de recuperacion de clave tenia una estructura basada en un arbol de decisiones y se usaba algun tipo de estrategia para la primera busqueda para determinar la clave octeto por octeto.
Asumamos que un atacante conoce los primeros l octetos de una clave RC4 y consigue recuperar k=Sl+2[l+1] en lugar de Sl+1[l]. Ahora Sl+1-1[k]-Sl+1[l+1]-Sl[l]-jl=K[l]+K[l+1] permanece y un atacante habria recuperado el valor de K[l]+K[l+1]. Con una probabilidad muy alta Sl+1-1[k]=Sl-1[k] y Sl+1[l+1]=Sl[l+1] permanece y Sl-1[k]-Sl+1[l+1]-Sl[l]-jl toma el valor de K[l]+K[l+1].

Llamaremos a estas correlaciones entre los primeros l octetos de una clave RC4, el keystream generado, y a los siguientes i octetos de la clave una correlacion multiocteto y escribiremos o1 para la suma:

[Imagen: awwfm1.jpg]

Tews, Weinmann y Pyshkin modificaron FKlein para votar por la suma de los siguientes m octetos de clave por cada m [Imagen: awwe.jpg]{1,íƒÆ’í‚¢íƒÂ¢í¢â‚¬Å¡í‚¬íƒâ€ší‚¦,13}. Esto resulta en las siguiente funcion: [Imagen: awwe.jpg]

[Imagen: atacwepwpa6.jpg]

la cual depende solamente de los primeros 3 octetos de la clave por paquete (IV) y vota por oi en lugar de Rk[i].

El ataque PTW actualmente funciona asi: Primero un atacante captura paquetes y recupera sus keystreams como con los ataques FMS y KoreK. El atacante conoce los primeros l=3 octetos de todas las claves por paquete. Ahora evalua Fptwm para cada paquete y cada m [Imagen: awwe.jpg]13} y consigue votos para 12. Despues de que todos los paquetes se hayan procesado, la clave raiz resultante se calcula usando Rk[0]=o0 y Rk[i]=oi-oi-1. Si la clave es correcta, se toma una decision alternativa para uno de los valores oi y la clave se actualiza usando solamente 12 unicas subtracciones sin necesidad de reevaluar todos los paquetes.

El ataque necesita solamente alrededor de 35.000 a 40.000 paquetes[14,15] para el 50% de probabilidad de suceso, lo que podria ser recolectado en menos de 60 segundos en una red rapida. Solo se necesitan unos pocos segundos de tiempo de CPU para ejecutar el ataque.
Se han propuesto algunas modificaciones al ataque PTW[16,10] las cuales reducen el numero de paquetes necesarios o permitir el uso del ataque PTW en algunos casos especiales donde la recuperacion de flujos de clave completos es dificil.

3.4 El ataque Chopchop

El ataque chopchop[8,14] permite a un atacante descifrar interactivamente los ultimos m bytes de texto plano de un paquete cifrado enviando m-128 paquetes de promedio a la red. El ataque no revela la clave raiz y no se basa en ningunas propiedades especiales del cifrado de flujo RC4.

Podemos sumarizar el ataque chopchop de la forma siguiente: Antes del cifrado, se añade un chequeo de comprobacion CRC32 de cuatro octetos llamado ICV a los datos del paquete. Un paquete con el cheksum P puede representarse como un elemento del anillo polinomico F2[X]. Si el checksum es correcto, P mod PCRC=PUNO permanece, donde PUNO es un polinomio conocido y PCRC es un polinomio conocido tambien, el cual es irreducible. Podemos escribir P como QX8+R. Aqui R es el ultimo octeto de P y Q son todos los octetos restantes. Cuando el paquete (cifrado) es truncado por un octeto, Q probablemente tendra un checksum incorrecto.

Asumimos que el atacante conoce R. Añadiendo PUNO+(X8)-1(PUNO+R) a Q corrige el checksum de nuevo. Por ejemplo si un cliente no esta autenticado, y un punto de acceso recibe un paquete de este cliente, el punto de acceso generara un mensaje de error. Paquetes con un checksum incorrecto son descartados silenciosamente.

Un atacante puede usar esto para descifrar interactivamente paquetes. El atacante selecciona un paquete capturado para descifrado. Trunca el paquete por un octeto, adivina R, corrige el checksum y envia el paquete al punto de acceso para saber si su suposicion de R ha sido correcta. Si ha adivinado R correctamente, el atacante ahora conoce el ultimo octeto de texto plano y puede continuar con el segundo ultimo octeto. Si la suposicion ha sido incorrecta, realiza una adivinacion adicional para R. Despues de unas 256 suposiciones y un promedio de 128, ha adivinado el valor correcto de R.

4. Un ataque mejorado sobre WEP

Desafortunadamente, despues del lanzamiento del ataque PTW, se siguio prestando poca atencion al viejo ataque KoreK. Comparado al ataque PTW, el ataque KoreK tenia la desventaja de que solamente necesita los primeros dos octetos de todos los paquetes capturados. Normalmente, la recuperacion de los primeros dos octetos del flujo de clave es mucho mas facil que recuperar los primeros 15 o 31 octetos. Una agradable excepcion es el trabajo hecho por Vaudenay y Vuagnoux[16], quienes mostraron que la correlacion utilizada en el ataque PTW puede tambien reescribirse para votar por oi en lugar de Rk[i]. Esta correlacion es una de las 17 utilizadas en el ataque KoreK.

[Imagen: atacwepwpa7.jpg]

Para mejorar el rendimiento del ataque PTW, comenzamos a reescribir todas las correlaciones utilizadas por KoreK para votar por oi en lugar de Rk[i]. Sorprendentemente, pudimos modificar exitosamente casi todas las correlaciones usadas por KoreK, con unas pocas excepciones:

Las correlaciones A_4_s13, A_4_u5_1, y A_4_u5_2 en el ataque KoreK original podian usarse solamente para votar por Rk[1] cuando Rk[0] es conocido. Usando estas correlaciones para Rk[2], Rk[3] o cualquier otro octeto de la clave mas alla de Rk[1] no ha sido implementado por KoreK. La modificaciones de estas correlaciones resulta en nuevas correlaciones las cuales solamente votan por oi, incluso con Rk[0] o o0 desconocidos.
KoreK asigno etiquetas con comentarios a algunas correlaciones. La correlacion A_u5_3 es la unica etiquetada con el comentario buena. Cuando intentamos modificar A_u5_3 para votar oi, la resultante correlacion no produjo resultados utiles.

La correlacion A_neg fue utilizada por KoreK para excluir valores de ser Rk[i]. La modificacion de esta correlacion resulta en una nueva correlacion que excluye valores de ser oi con una alta probabilidad. Para implementar esta caracteristica adicional, un peso negativo se asigna a esta correlacion.

Otra extension interesante del ataque PTW fue sugerida por [16] y [10] independientemente. Primero mostraron que es posible obtener cuatro veces mas votos para o13 que para todos los demas valores de oi. Esto hace mucho mas facil para un atacante decidir el valor de o12 que todos los demas valores de oi. Segundo, encontraron que la correlacion usada en el ataque PTW puede facilmente modificarse para votar por el valor de o12+oi, incluso cuando el valor de o12 es desconocido por el momento. Despues que el atacante haya decidido el valor de o12, puede obtener votos adicionales para cada oi, substrayendo el valor de o12 de esos votos. Para usar estas correlaciones adicionales, un atacante necesita los octetos de flujo de clave X[15] a X[30], que a veces tambien se pueden recuperar.

Usando todas estas ideas, modificamos una implementacion del ataque PTW, resultando en una nueva herramienta de crackeo WEP, que claramente necesita menos paquetes que previas implementaciones del ataque PTW. Decidimos usar la misma estrategia de ranking de claves utlizada en el ataque PTW original. Limitamos el numero de claves que la implementacion prueba antes de fallar a 2^20. El mismo limite ha sido usado por publicaciones previas sobre ataques WEP, por lo que seria facil comparar nuestro ataque a los previos.

La Figura 1 muestra el ratio de exito de nuestra implementacion. Para una tasa de acierto del 50%, el ataque necesita solamente unos 24.200 paquetes, comparado a los 32.700 para el ataque VX [16] y entre 35.000 y 40.000 para las varias implementaciones del ataque PTW[15,14].

5. Rompiendo WPA

Nuestra segunda contribucion es un ataque sobre WPA[2]. WPA estandariza dos modos en como puede protegerse el íƒÆ’í‚¢íƒÂ¢í¢â‚¬Å¡í‚¬íƒâ€¹í…“payloadíƒÆ’í‚¢íƒÂ¢í¢â‚¬Å¡í‚¬íƒÂ¢í¢â‚¬Å¾í‚¢ durante la transmision. Temporal Key Integrity Protocol, Protocolo de Integridad de Clave Temporal (TKIP) y (AES-)CCMP. Para este papel, nos concentraremos en TKIP. TKIP es una ligeramente modificada version de WEP. TKIP implementa una funcion de mezcla de clave mas sofisticada para mezclar una clave de sesion con un vector de inicializacion para cada paquete. Adicionalmente, un Message Integrity Check, Comprobacion de Integridad del Mensaje(MIC) de 64 bits llamado MICHAEL[2] se incluye en cada paquete para prevenir ataques sobre los debiles mecanismos de proteccion CRC32 conocidos de WEP. Para prevenir ataques simples de reinyeccion, se utiliza un contador de secuencia (TCS), el cual permite a los paquetes solamente llegar en orden al receptor.

TKIP fue diseñado para que hardware que solamente soportara WEP pudiese ser actualizable por firmware o por controlador a TKIP. Por lo tanto, el cifrado de flujo RC4 todavia se utiliza y el ICV se incluye todavia en cada paquete.

Mostraremos que es posible descifrar trafico al estilo chopchop y enviar paquetes con un contenido a medida: Asumimos que se dan las siguientes condiciones: La red atacada utiliza TKIP para la comunicacion de cliente con el punto de acceso. El protocolo IPv4 se utiliza con un rango IP donde la mayoria de los octetos de las direcciones son conocidos por el atacante (por ejemplo 192.168.0.X). Para TKIP se utiliza un intervalo largo de renovacion de clave, por ejemplo 3600 segundos. La red soporta las funcionalidades del IEEE 802.11e QoS (Calidad del Servicio)[2] lo que permite 8 canales diferentes (llamado TID - identificador de trafico) para diferentes flujos de datos, y una estacion esta actualmente conectada a la red.

Estas condiciones son bastante realistas para la mayoria de redes implementadas ahi fuera. Para atacar este tipo de red, el atacante primero captura trafico, hasta encontrar una peticion o respuesta ARP cifrada[11]. Este tipo de paquetes pueden ser facilmente detectados debido a su longitud caracteristica. Adicionalmente, las direcciones ethernet de origen y destino no estan protegidas por WEP y TKIP, y las peticiones son siempre enviadas a la direccion de difusion (broadcast) de la red. La mayor parte del texto plano de este paquete es conocido por el atacante, excepto el ultimo octeto de las direcciones IP de origen y destino, el MICHAEL MIC de 8 octetos y el ICV checksum de 4 octetos. MIC e ICV forman los ultimos 12 octetos del texto plano.

Un atacante puede lanzar ahora un ataque chopchop modificado como contra una red WEP para descifrar los octetos desconocidos del texto plano. TKIP contiene principalmente dos contramedidas contra los ataques de tipo chopchop:

·Si un paquete con un valor ICV incorrecto es recibido por el cliente, se asume un error de transmision y el paquete resultante es descartado silenciosamente. Si el valor ICV es correcto, pero la verificacion MIC falla, se asume un ataque y es notificado al punto de acceso por el cliente, enviando un MIC failure report frame (reporte de fallo MIC), pero el contador TSC no aumenta. El atacante necesita esperar al menos 60 segundos despues de disparar un reporte de fallo MIC para prevenir que el cliente ponga en marcha contramedidas. Al cabo de un poco mas de 12 minutos, el atacante puede descifrar los ultimos 12 octetos de texto plano (MIC e ICV). Para determinar los restantes octetos desconocidos (direcciones IP exactas del emisor y del receptor), el atacante puede suponer o adivinar los valores y verificarlos contra el ICV descifrado.
Despues de conocer el MIC y el texto plano, el atacante puede simplemente revertir el algoritmo MICHAEL y recuperar la clave MIC utilizada para proteger los paquetes enviados del punto de acceso al cliente. El algoritmo MICHAEL no ha sido diseñado para ser una funcion de una direccion, y revertir el algoritmo es tan eficiente como calcular el algoritmo hacia adelante.

En este punto, el atacante ha recuperado la clave MIC y conoce un flujo de clave para la comunicacion del punto de acceso al cliente. Ahora tiene la posibilidad de enviar un paquete modificado al cliente en cada canal QoS, donde el contador TSC es todavia mas bajo que el valor utilizado para el paquete capturado. En la mayoria de redes reales, todo el trafico es transmitido sobre el canal 0, por lo que el atacante tiene la posibilidad de enviar 7 paquetes a medida al cliente. Despues de ejecutar satisfactoriamente un ataque, el atacante puede recuperar un flujo de clave adicional en unos 4-5 minutos, porque solamente necesita descifrar los 4 octetos ICV utilizando chopchop. Los octetos de direccion IP pueden suponerse, y entonces calcularse el MIC utilizando la clave MIC conocida y verificada contra el ICV.

Para causar daño, el atacante podria por ejemplo enviar mensajes disparando sistemas IDS (Sistemas de Deteccion de Intrusos) que trabajan en la capa IP. Alternativamente, el trafico podria re-enrutarse utilizando respuestas ARP falsas. El atacante podria intentar establecer un canal bidireccional al cliente, si el cliente esta conectado a Internet utilizando un cortafuegos que bloquee el trafico entrante, pero permitiendo el trafico saliente. Las respuestas del cliente no pueden leerse al vuelo por el atacante, pero podrian re-renrutarse sobre Internet.

Hemos creado una prueba de concepto de la implementacion de este ataque para verificar que el ataque actualmente funciona. Hemos atacado hardware de diferentes fabricantes, confirmando que el ataque es realmente aplicable contra redes del mundo real.

Incluso si la red no soporta las caracteristicas del IEEE 802.11e QoS, el ataque todavia parece posible. Aqui, el atacante necesita evitar que el cliente reciba el paquete de datos elegido para el ataque chopchop, y debe desconcetar al cliente del punto de acceso durante el tiempo del ataque, para que el contador TSC no se incremente con el siguiente(s) paquete(s). Despues de que el atacante ha ejecutado satisfactoriamente el ataque chopchop, tiene la posibilidad de enviar un unico paquete al cliente. De todos modos, no hemos implementado este modo de ataque.

Si un atacante quisiera recuperar un flujo de clave todavia valido para un canal QoS y la clave MIC para ambas direcciones (nuestro ataque solamente recupera un flujo de clave y la clave MIC para comunicacion desde el punto de acceso al cliente), podria ser capaz de usarlas para recuperar flujos de clave adicionales y podria enviar un numero ilimitado de paquetes con texto plano a medida.

5.1 Contramedidas

Para prevenir este ataque, sugerimos un tiempo de renovacion de clave muy corto, por ejemplo 120 segundos o menos. En 120 segundos, el atacante puede solamente descifrar partes del valor ICV al final del paquete. Alternativamente deshabilitando el envio de frames de reportes de fallo MIC en los clientes tambien podria prevenir el ataque. La mejor solucion seria deshabilitar TKIP y utilizar CCMP solamente en la red.

6 Conclusion

WEP se sabe que es inseguro desde 2001, de todos modos creemos que los ataques de recuperacion de clave contra WEP son todavia interesantes. Por una parte, WEP todavia se utiliza por ahi, y por otra, algunas compañias estan vendiendo hardware utilizando versiones modificadas del protocolo WEP, y pregonan que son seguras. Lo segundo, es que el protocolo TKIP utilizado por WPA no es demasiado diferente de WEP, por lo que ataques sobre WEP pueden afectar la seguridad de redes que utilicen TKIP, como hemos visto en este papel.

Nuestro ataque sobre TKIP de la Seccion 5 muestra que incluso WPA con una contraseña fuerte no es 100% seguro y puede ser atacado en un escenario del mundo real. A pesar de que este ataque no es un ataque de recuperacion completa de clave, sugerimos que los fabricantes deberian implementar contramedidas contra este ataque. Ya que el problema puede arreglarse en una parte de alto nivel del protocolo, creemos que deberian desarrollarse facilmente actualizaciones e implementarse con nuevos controladores.

Referencias

[1] Andrea Bittau, Mark Handley, y Joshua Lackey. El clavo final en el ataud de WEP. En IEEE Symposium on Security and Privacy, pgs.386-400. IEEE Computer Society, 2006
[2] IEEE-SA Standards Board. Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications. Communications Magazine, IEEE, 2007
[3] Rafik Chaabouni. Rompe wep mas rapido con analisis estadistico. Reporte tecnico, EPFL, LASEC, Junio 2006
[4] Scott R. Fluhrer, Itsik Mantin, and Adi Shamir. Debilidades en el algoritmo de programacion de clave de RC4. En Serge Vaudenay y Amr M.Youssef, editores, Selected Areas in Cryptography 2001, vol.2259 de Lecture Notes in Computer Science, pgs.1-24 Springer, 2001
[5] David Hulton. Explotacion practica de las debilidades RC4 en entornos WEP, 2002, presentada en HiverCon 2002
[6] Robert J.Jenkins. Isaac y RC4 http://burtleburtle.net/bob/rand/isaac.html ,1996
[7] A.Klein. Ataques al cifrado de flujo RC4. Designs, Codes and Cryptography,48(3):269-289,2008
[8] KoreK, chopchop (ataques WEP experimentales) http://www.netstumbler.org/showthread.php?t=12489 ,2004
[9] KoreK, Siguiente generacion de ataques WEP? http://www.netstumbler.org/showpost.php?...stcount=35 ,2004
[10] Yuko Ozasa, Yoshiaki Fujikawa, Toshihiro Ohigashi, Hidenori Kuwakado y Masakatu Morii. A study on the Tews, Weinmann, ataque Pyshkin contra WEP. En IEICE Tech. Rep., vol.107 de ISEC2007-47,pgs.17-21,Hokkaido,July 2007. Thu,Jul 19,2007 - Fri, Jul 20: Future University-Hakodate (ISEC, SITE, IPSJ-CSEC)
[11] D.C.Plummer. RFC 826: Ethernet Address Resolution Protocol: Or converting network protocol addresses to 48 bit Ethernet address for transmission on Ethernet hardware, November 1982
[12] David Sterndark. Algoritmo RC4 revelado. Post de usenet, Message-ID: ,Sep 1994
[13] Adam Stubblefield, John Ioannidis, y Aviel D.Rubin. Un ataque de recuperacion de clave sobre 802.11b WEP. ACM Transactions on Information and System Security,7(2):319-332. May 2004
[14] Erik Tews, Attacks on the wep protocol. Cryptology ePrint Archive, Report 2007/471,2007 http://eprint.iacr.org
[15] Erik Tews, Ralf-Philipp Weinmann, y Andrei Pyshkin. Rompiendo wep de 104 bits en menos de 60 segundos. En Sehun Kim, Moti Yung y Hyung-Woo Lee, editores, WISA, vol.4867 de Lecture Notes in Computer Science, pgs.188-202. Springer,2007
[16] Serge Vaudenay y Martin Vuagnoux. Ataques solo-pasivos de recuperacion de clave sobre RC4. En Selected Areas in Cryptography 2007, Lecture Notes in Computer Science, Springer.2007
Zero13

"Así como el hierro se oxida por falta de uso, también la inactividad destruye el intelecto.." - Leonardo Da Vinci

Síguenos en TwitterYoutube

Responder
#2
Lo que una Mente Crea otra la Destruye...

Este dicho esta en el Mundo del Cracking asi que no te sorprendas Zero13 cada dia se inventan nuevas Protecciones y cada dia se crean nuevos Hacks asi que todo es una cadena...

[Imagen: j8nskyjt2.png]

Ahi algunas definiciones de este mundillo:

Hacker:
1. Persona que disfruta explorando los detalles de los sistemas programables y como extender sus capacidades.

2. Alguien que programa con mucho entusiasmo

3. Una persona que es buena en programar rapidamente

4. Persona experta en un programa o sistema particular p.e. un Hacker de UNIX.

5. (acepción no recomendada) Un merodeador malicioso, que trata de descubrir información sensitiva jugando con el sistema, el termino correcto para esto es Cracker.


Dentro de los hackers hay subespecies, existen dos criterios para clasificarlos, segon su etica, esta el Hacker de sombrero blanco, sombrero gris y sombrero negro.


El hacker de sombrero blanco es el administrador de sistemas, o el experto de seguridad, que tiene una etica muy alta y utiliza sus conocimientos para evitar actividades ilicitas.

El hacker se sombrero negro, que algunos prefieren llamar craker, es quien disfruta de penetrar en los sistemas de seguridad y crear software dañino (Malware).

En contraste el hacker de sombrero gris, no se preocupa mucho por la etica, sino por realizar su trabajo, si necesita alguna informacion o herramienta y para ello requieren penetrar en un sistema de computo, lo hace, ademas disfruta poniendo a prueba su ingenio contra los sistemas de seguridad, sin malicia y difundiendo su conocimiento, lo que a la larga mejora la seguridad de los sistemas.

Segon su capacidad tacnica se dividen en el hacker estandar y el "elite".

Cracker:
Persona que rompe la seguridad en un sistema. Termino acuñado por la comunidad Hacker para defenderse contra el mal uso periodistico de la palabra Hacker y refleja la repulsión que hay entre los viejos hackers por el vandalismo y destrucciones de los grupos de Crakers. Es considerado por la comunidad como una forma inferior de vida o protohacker. Algunos Hackers pasan por esta etapa, pero usualmente se espera que dure poco y que maduren para convertirse en hackers

Ciberpunks:
El nombre fue tomado de una novela clasica, Neuromancer, en la comunidad Hacker se usa para referirse a los magos de la criptografia.

Phreakers:
Saben como usar los sistemas telefónicos en formas que la compañia nunca aprobaria. Nacieron cuando alguien noto que un silbatito que se regalaba en una caja de cereales del "Capitan Crunch", daba el tono exacto de los tonos de control de los sistemas telefónicos (2600 Hz), y silbando una secuencia exacta de tonos se podian hacer muchas cosas interesantes. De ahi nacio el concepto del Hack.


Script Kidies.
Estos son los recian llegados, tambian son considerados protohackers, pero sus conocimientos tacnicos son aun rudimentarios, sin embargo saben usar el ratón como el mejor, han prendido a usar las herramientas de los hackers y son los responsables de muchos ataques sin sentido. Para deleite de la prensa se llaman a si mismos hackers y responden de una manera muy agresiva cuando se le llama Script Kiddies...


Sneaker:
Individuo, usualmente un Hacker, que se contrata para tratar de irrumpir en un sistema para probar su seguridad.

Wizard:
Persona que conoce a fondo como funciona una pieza compleja de equipo. Especialmente si puede reparar un sistema rapidamente en casos de emergencia, tal vez con algo de magia profunda, es decir usando instrucciones o tacnicas que resultan completamente incomprensibles a los simples mortales. Mientras que un Hacker puede usar algunas tacnicas avanzadas, es el Wizard el que entiende como o por que funcionan.

Nerd:
Dicese de una persona que es sobresaliente en algon area de la tecnologia y que es socialmente inepto. En su versión extrema a algunos Nerds se les pone el termino de "muchos MIPS sin I/O" debido a que son muy brillantes, pero incapaces de comunicarse con otros seres humanos. No confundir con el Hacker, pues aunque la falta de comunicación con el ser humano estandar les ayuda concentrarse en su trabajo, el conocimiento tacnico no necesariamente significa falta habilidades sociales.

Bem:
Es lo contrario de un Nerd, persona sobresaliente en las relaciones humanas y tecnicamente inepto. Debido a su falta de comprensión, el Bem y el Nerd tienen a enfrentarse, sin embargo cuando logran cooperar el resultado es excelente.

Geek:
Subespecie del Nerd, es el especialista (o fanatico) en equipos de computo. El termino aun tiene cierto sentido peyorativo, y muchas veces se refiere a una versión caricaturesca o extrema del Nerd, por lo que no se le debe aplicar a alguien a menos que este seguro que esta persona se asuma como tal.

Guru:
Es el maestro a quien recurre el Hacker y el Wizard cuando tienen algun problema, pues posee conocimientos mas alla de la comprension de un simple mortal.



Programador Vodoo
Se le llama asi al programador que toma tacnicas o recetas de libros sin entender como funcionan, por lo que no tiene manera de saber si van a funcionar o no. Es en estos casos cuando el Hacker necesita la ayuda de un Wizard o de su Guru.



:adios::adios:Saludos...:adios::adios:
Responder
#3
No me sorprende... he trabajado en Seguridad Informatica hace años, simplemente es una noticia, igualmente que pasara como es logico con el WPA2.. etc.

Por cierto!.. si puedes mejor abre un tema en el Area de Hacking Wireless y alli cuelgas esta información.

Wink
Zero13

"Así como el hierro se oxida por falta de uso, también la inactividad destruye el intelecto.." - Leonardo Da Vinci

Síguenos en TwitterYoutube

Responder
#4
hola a todos... alguien ya probo su propia seguridad utilizando wpa y desencriptandolo?
se puede utilizar el ERW del tio LAMPI?

espero sus comentarios...
Responder
#5
Alguna distribucion de las del foro trae implemetando el algoritmo para atacar WPA sin diccionario ?
Responder
#6
Buen aporte Zero13, cada vez nos vamos aproximando mas y mas... ya sólo falta lo que ha dicho puhig, que salga alguna distribución con el algoritmo ya implementado. Un saludo.
Responder
#7
hola zero

quien es este tio que hace tanto spam y no lo botas parece q se olvido que este es un foro en español
Responder
#8
m0n0 escribió:hola zero

quien es este tio que hace tanto spam y no lo botas parece q se olvido que este es un foro en español

Gracias m0no por reportar Spam.

Un saludo.
Responder


Posibles temas similares...
Tema Autor Respuestas Vistas Último mensaje
Lightbulb Noticia: Analisis Tp-Link Archer C2600 en pleno proceso !!! Zero13 0 486 26-03-2016, 16:16
Último mensaje: Zero13
  Noticia: El Wifi/Wireless cumple 25 años... Zero13 0 3,763 18-05-2010, 21:33
Último mensaje: Zero13
  Noticia: Científicos del MIT consiguen la electricidad sin cables ( witricidad ) Zero13 0 2,878 30-04-2010, 12:02
Último mensaje: Zero13
  Noticia: WiFi 802.11ac ... será el que mejoré al Standard N Zero13 1 1,233 19-04-2010, 17:51
Último mensaje: Zero13
  Noticia: SMC Networks incluye Panda Internet Zero13 0 1,541 26-02-2008, 16:24
Último mensaje: Zero13
  Noticia: DD-WRT consigue un acuerdo con BUFFALO Zero13 3 2,118 28-10-2007, 15:25
Último mensaje: mincho
  Noticia Curiosa..... ;) Zero13 7 2,481 15-08-2006, 06:03
Último mensaje: virkoff
  Noticia: Curioso adaptador Wifi b/g para Portatiles.... 0 190 Menos de 1 minuto
Último mensaje:
  Noticia: Nuevo Sistema Electronico impedira el pirateo WiFi 0 2,175 Menos de 1 minuto
Último mensaje:
  Noticia: Málaga será la primera ciudad Wi-Fi del mundo 0 3,869 Menos de 1 minuto
Último mensaje:

Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)