Sunteți pe pagina 1din 9

802.

11 (WiFi) Wireless LAN

WEP
Wired Equivalent Privacy

WEP

Funcionamiento

Wired Equivalent Privacy.


Diseado para garantizar comunicaciones
seguras en entornos wireless.
Introducido en la primera versin del
standard (802.11), pero mantenido sin
cambios en las nuevas (802.11a, 802.11b).
Compatibilidad entre distintos fabricantes.

30 bytes

0-2312 bytes

4 bytes

802.11 Headers

Data

CRC32

40 bits

24 bits

Zona cifrada
802.11 Headers

IV

Data

RC4
Cifrador de flujo (no de bloques).
Creado en 1987 por Ronald Rivest (la R de RSA).
Secreto Comercial de RSA Data Security.
13/Sep/1994 fue publicado usando remailers
annimos en un grupo de news: sci.crypt
Usado por diversos programas comerciales.

RC4

IV

WEP utiliza RC4 como algoritmo de


cifrado.
En WEP se usan claves de 64 o 128 bits
(40+24 o 104+24).
Cada paquete cifrado, contiene un IV sin
cifrar y el bloque de datos cifrado, el cual a
su vez contiene un CRC32 (cifrado) para
comprobar integridad.

64 bits
SHARED KEY

Sistema de conexin a red sin hilos.


802.11: hasta 1 Mbps
802.11b: el ms extendido, hasta 11 Mbps
802.11a: hasta 54 Mbps
Frecuencia: sobre los 2,4 GHz
Incorpora opcionalmente cifrado: WEP

CRC32

Netscape
Lotus Notes

RC4

RC4
Clave

A partir de una clave de 1 a 256 bytes (8 a


1024 bits) inicializa una tabla de estados.
Esta tabla se usa para generar una lista de
bytes pseudo-aleatorios.
Estos bytes se combinan mediante la
funcin XOR con el texto en claro.
El resultado, es el texto cifrado.

RC4

PRNG

Texto en claro

XOR

Texto cifrado

Rompiendo WEP

Clave

RC4 40 bits se puede romper a fuerza bruta


en menos de 1 da.
IV tiene tamao 24, es muy fcil que sea
reusado un IV.
Para romper WEP no es necesario ese
camino, se pueden aprovechar otras
deficiencias del algoritmo.

PRNG

Texto cifrado

XOR

Texto en claro

Caractersticas dbiles de WEP

Sistemas de clave
Sistema de integridad
Sniffing
Identificacin de estaciones
Vector inicial (IV)

Sistema de claves
Claves de 40 o 104 bytes.
Se introduce de forma manual. No hay un sistema
automtico seguro de distribucin de claves.
La passphrase del administrador es directamente la
clave.
Normalmente todas las estaciones que comparten
un access point utilizan la misma clave.
El cambio de clave es un proceso manual.

Debilidades del sistema de claves


Claves de 40 bytes son completamente vulnerables
a ataques de fuerza bruta.
Como se utiliza directamente una clave
introducida por una persona son muy vulnerables
a los ataques de diccionario.
Si se utiliza la misma para todas las estaciones,
sniffando en cerca del Access Point todo el trfico
sirve como base para romper la clave.

Debilidades del sistema de


integridad

Sistema de integridad
Antes de encriptar se realiza un CRC32 del
paquete.
Los paquetes cuyo CRC32 sea incorrecto,
simplemente son rechazados.

Sniffing

CRC-32 es un sistema pensado para solucionar


errores producidos de forma involuntaria en el
sistema de transmisin.
No sirven para evitar modificaciones maliciosas
ya que al ser lineales permiten la reconstruccin
de los cdigos.
Cambiando ciertos bits de los datos, es posible
calcular los cambios necesarios en el CRC32 para
mantenerlo coherente.
Solucin es utilizar sistemas criptolgicos de
integridad: funciones Hash.

Wireless LAN es un sistema sin hilos y, por lo


tanto, con una antena adecuada se puede
interceptar todas las transmisiones de la celda
(zona de un access point).
Se emite de forma onmidireccin por eso no se
necesita afinar para capturar trfico.
Las estaciones utilizan franjas temporales aignadas
por el Access Point para comunicarse, pero las
antenas y tarjetas permiten escuchar en toda la
banda.

Mtodos de sniffing

Identificacin de estaciones

La antena es preferible que sea de Wireless LAN,


pero pruebas con sistemas metlicos sencillos
tambin han permitido sniffar a distancias cortas.
Hay tarjetas y drivers preparados para monotorizar
la red, son de alto coste.
Con tarjetas de bajo coste sobre Linux se puede
modificar para captar todo el trfico.
Un problema de algunas tarjetas de bajo coste es
que deben pedir franja temporal y darse de alta en
el AP y podrian ser detectadas. Se soluciona
modificando Drivers.

Se identifican por la clave compartida con el AP.


WEP no utiliza estados anteriores, esto permite
reemplazar estaciones o realizar ataques de D o S.
Tambin es posible realizar ataques de repeticin,
volviendo a enviar paquetes capturados, que sern
descifrados correctamente.
Si se descubre la clave, la estacin intrusa tiene
acceso a la LAN como si estuviera pinchando en
los claves.

Vector Inicial (IV)


El IV va incluido en el paquete.
Se inicializa en las estaciones antes del
envio de cada paquete.
Los sistemas de uso de los IV pueden ser:
Contador. Se inicia a 0 al arracar la estacin.
Pseudoaleatorio .
Combinaciones entre IVs anteriores.

Debilidades de los IVs


Como se explica ms adelante, el objetivo del
atacante que quiere obtener la clave es disponer de
unos IV concretos.
En el caso de contador, el atacante ya sabe con
antelacin que IV tendr y cuando conseguir
romper.
En el aleatorio, como la distribucin ser
uniforme, tambin se puede esperar obtener los
IVs necesarios en un tiempo razonable.

Debilidades de los IVs

Ataques pasivos

En el ltimo caso, la secuencia generada


ser condicionada y, por lo tanto, se puede
alejar de los IVs buscados, pero
normalmente no ser as.
Igualmente, la mayora de tarjetas usan el
contador.
El sistema ideal sera el que generara IV no
vulnerables, es utpico.

Identificacin de secuencias
pseudoaleatorias iguales . Debilidad de los
algoritmos de streaming.

Ataques activos

Id. secuencias pseudoal. iguales

Repeticin de paquetes . Aprovechando que WEP


no utiliza estados anteriores ni guarda estado.
Inyeccin o permutacin de bits. Utilizando el
sistema de integridad dbil.
Inyeccin de paquetes encriptados. Si se conoce
un texto y su encriptacin se puede encriptar un
paquete sin conocer la clave.
Por 2 extremos. Utilizando una mquina desde
Internet se puede generar trfico que luego sea
cifrado por el AP hacia las estaciones wireless.

El criptograma es el resultado de realizar un


XOR entre el generador pseudoaleatorio
(RC4) y el texto.
Si se realiza un XOR de dos criptogramas
con el mismo IV y clave (misma secuencia
pseudoaleatoria) se obtiene el XOR de los 2
textos en claro.

Debilidad del RC4. Descubierto por


Fluher, Mantin y Shamir en agosto del
2001. Ms prctico, puede servir para
realizar activos ya que se obtiene la clave .

Id. secuencias pseudoal. iguales

Id. secuencias pseudoal. iguales


Conocido

M1

C1

RC4
RC4
M2

M1

C2

Ma

S
Anlisis estadstico:
Muchos mensajes se repiten
en TCP/IP.

Mb
.
.
Mf

C1

C2 =

M1

M2

MX

IV

M2

M1
+

MX = MZ
M2

Si se descubre M1 o M2 se obtinte el otro, S y se puede sacar K.

Id. secuencias pseudoal. iguales

Vulnerabilidad RC4

Sistema que aprovecha una debilidad de todos los


algoritmos de streaming.
Se deben utilizar mtodos estadsticos, esto hace
que no sea determinstico.
Si se consiguen ms mensajes con el mismo IV, la
probabilidad de encontrar un texto en claro es
mucho ms alta
Cuando se encuentra uno todos los dems se
pueden desencriptar.
Es mejor el sistema que aprovecha la debilidad del
RC4.

Fluhrer, Mantin y Shamir descubieron en


agosto del 2001 una debilidad del RC4.
Se utiliza nicamente el primer byte
generado por la secuencia pseudoaleatoria.
El objetivo es obtener la clave de
encriptacin.

Vulnerabilidad RC4

Vulnerabilidad RC4

Tambin en agosto del 2001, Stubblefield,


Ioannidis y Rubin implementaron un sistema
prctico y barato para conseguir la clave con la
vulnerabilidad del RC4. Consiguieron la clave en
2 tipos de experimentos con:

Cada paquete da informacin sobre un byte


de la clave (pueden ser 40 o 102).
Slo un conjunto determinado de IV da
informacin sobre una clave.
Se deben buscar los paquetes con IV de un
conjunto y a partir de stos construir la
clave de forma estadstica.

Entre 5 y 6 millones de paquetes utilizando slo la


vulnerabilidad.
Sobre 1 milln de paquetes combinando esta tcnica
con otras.

Los programas freeware Airsnort y WEPCrack


utilizan esta tcnica.

Vulnerabilidad RC4

Vulnerabilidad RC4
Zona cifrada

Se debe conocer el texto en plano.


En TCP/IP, se pueden utilizar los carcteres
0xAA que estn en el inicio.
En IPX se pueden utilizar los carcteres del
inicio 0xFF o 0xE0.

802.11 Headers

Vulnerabilidad RC4

Data

CRC32

1r Byte

Nada

Relacin 1r byte encriptado

IV

Algoritmo
Algoritmo
Cracking
Cracking

0xAA 1r byte TCP/IP

1 byte de la clave (ByteKey)

Vulnerabilidad RC4
Eleccin de los IV adecuados
IV

1r byte de secuencia pseudoalatoria S[ S[1] + S[S[1]]]


S matriz de permutacin

NO
Sirve?

El mensaje no se
puede utilizar

SI
Posible ByteKey
0xAA

S[ S[1] + S[S[1]]]

= M1
1r byte mensaje encr.

Vulnerabilidad RC4
Algoritmo Cracking
IV
Posible ByteKey

ByteKey es correcto
1r byte mensaje 0xAA

0xAA
SI
1r byte mensaje
encr.

En
En elel apndice
apndice A
A del
del documento
documento de
deFluhrer
Fluhrer et.
et. al.
al. se
se
recomienda
recomienda IV
IV == (ByteKey
(ByteKey++ 3,
3, 0xFF,
0xFF, N).
N). N
N es
es cualquier
cualquier
nmero.
nmero.
Pero
Pero se
se pueden
pueden utilizar
utilizar otras
otras combinaciones.
combinaciones.

Mejoras ataque vuln. RC4


Para mejorar la eficiencia se pueden trabajar
en paralelo varios tipos de IV.
Un proceso analiza los IV (ByteKey + 3,
0xFF, N) y otro proceso analiza otra
estructura tambin vulnerable.

ByteKey
?
Clave 104 bits

Mejoras ataque vuln. RC4

Mejoras ataque vuln. RC4

Las claves se entran de forma manual, por


lo tanto seguro que son vulnerables a los
ataques de diccionario.
As cuando se tienen suficientes paquetes
almacenados, se puede empezar la bsqueda
de ByteKeys por las letras y nmeros del
alfabeto.

Si se repiten dos valores iguales entre S[1],


S[S[1]] y S[S[1] + S[S[1]]] entonces la
probabilidad de encontrar la clave es mucho
ms alta.
Si hay casos de estos almacenados se puede
empezar trabajando con ellos.

Mejoras ataque vuln. RC4

Conclusiones vuln. RC4

Realizar pruebas de fuerza bruta sobre los bytes


que faltan utilizando el Checksum como
comprobador de desencriptacin correcta.
Eliminar de la fuerza bruta los casos que se ha
probado que un byte no forma parte de la clave.
Tambin eliminar de la fuerza los BytesKey de los
que dispodremos de IV vlidos. Los IV se pueden
preveer si su generacin es deterministica (por
ejemplo tipo contador).

Es un sistema eficiente y fcil de programar.


Esta probado en laboratorio con resultados
eficientes (5-6 millones de paquetes para la clave
sin mejoras y 1 milln con mejoras).
Existen como mnimo 2 programas que aplican
este sistema con xito (Airsnort y WEPCrack).
Existe otra vulnerabilidad en RC4 de claves
dbiles pero no es prctica para un sistema no
cambia nunca la clave.

Repeticin de paquetes

Inyeccin o permutacin de bits

Como el protocolo no tiene memoria, se


pueden repetir paquetes sin necesidad de
conocer los contenidos.
Se pueden producir denegaciones de
servicio o bsquedas de informacin
forzando las respuestas (pings, arps, etc.).
Nmeros de secuencia TCP/IP protegen las
repeticiones, pero se pueden preveer.

Se pueden realizar ataques de DoSo


realizar pruebas de mensajes sin
desencriptar.
Si se conoce el texto en claro de un paquete
y su criptograma, para el mismo IV, se
puede insertar bits de este texto en otros
paquetes sin que se detecte.

Inyeccin de paquetes
Se conoce el texto X y su encriptacin
RC4(X), mediante mtodos como
aprovechar la debilidad de los algoritmos de
streaming.
Se aprovecha otra debilidad de RC4, se
puede encriptar un paquete Y sin conocer la
clave.

Por 2 extremos
Si un atacante en una estacin mvil sabe
encriptaruna direccin destino de una IP
externa a la red mvil, puede enviar
paquetes a esta red y llegarn
desencriptados.
Esta direccin la puede construir cambiando
bits de un paquete si es capaz de intuir la
direccin destino que contiene ese paquete.

Propuestas de soluciones sobre


futuras versiones WEP
Pasar la clave y el IV por una funcin Hash antes
de introducirlos en el RC4. Se debe hacer en todas
las estaciones.
Cambiar el sistema de encriptacin por un
algoritmo simtrico ms seguro, por ejemplo AES.
Utilizar mtodos de clave asimtrica para
distribuir claves con el objetivo de:
Cambiar claves frecuentemente.
Utilizar claves aleatorias, no de diccionario.
Identificar de forma segura las estaciones.

Inyeccin de paquetes
RC4(X)

RC4(Y)

Demostracin
RC4(X) = S

RC4(X)

RC4(Y)

Propuestas de soluciones sobre


WEP actual
Usar niveles de encriptacin de niveles ms
altos, como Ipsec, etc...
Colocar un Firewall entre los access points
y la LAN.
Usar VPNs.

Conclusiones
La mayoria de ataques no son nuevos, excepto la
debilidad del RC4.
Anteriores versiones de Ipsec tenan problemas
similares.
Se debera interactuar ms con la comunidad
criptolgica para posteriores diseos.
Se debera mejorar mucho la seguridad entre
usuarios finales.

Bibliografa

802.11 Wireless Networks: The Definitive Guide


By Matthew Gast
Applied Cryptography
By Bruce Schneier
RC4 Encryption Algorithm
http://www.ncat.edu/~grogans/algorithm_breakdown .htm
Attacks On RC4 and WEP (Fluhrer, Mantin & Shamir)
http://www.wisdom.weizmann.ac.il/~itsik/RC4/Papers/rc4_wep.ps
Using the Fluhrer, Mantin, and Shamir Attack to Break WEP
http://www.wisdom.weizmann.ac.il/~itsik/RC4/Papers/wep_attack.ps
Informacin sobre RC4 y sus ataques ms conocidos
http://www.wisdom.weizmann.ac.il/~itsik/RC4/rc4.html
Security of the WEP algorithm
http://www.isaac.cs.berkeley .edu/isaac/wep -faq.html

S-ar putea să vă placă și