19 noviembre 2008

Seguridad en redes inalámbricas

Mucho se ha hablado sobre la inseguridad de las redes wireless respecto a las claves WEP de 40 bits, que si se capturan los paquetes con IVs, etc etc,... y ya puedes navegar por la red del vecino. Parecía que la solución llegaba de forma intermedia antes de WPA2, mediante la utilización de WPA. La utilización de esta nueva tecnología para las comunicaciones inalámbricas caseras y corporativas supuso una gran revolución puesto que permitía enlazar con servidores de autenticación (Radius), claves compartidas (PSK o pre-shared keys) o certificados digitales. Se ha convertido en el estándard de facto.

Sin embargo WPA refuerza a WEP por la longitud del tamaño de clave (de 40 a 128 bits) y por longitudes de vectores de inicialización (IVs) de 48 bits, aunque se sigue utilizando el algoritmo simétrico RC4. Dada la longitud de clave utilizada se hace computacionalmente más duro reventar este tipo de algoritmo puesto que hay más combinaciones que probar.

Hace poco tiempo se publicó que se estaba aprovechando la potencia de las GPUs de las tarjetas gráficas Nvidia para efectuar ataques de fuerza bruta ante redes wifi con claves WPA y WPA2, de manera que el tiempo necesitado para comprometer redes se dividía por 100.

Las últimas noticias apuntan a que, parcialmente, el algoritmo WPA podría haber sido comprometido. En realidad esta noticia tan alarmista en realidad solo se refiere a WPA-PSK (es decir el basado en una clave compartida). No obstante, en Kriptópolis descartan ya WPA y se deja al final la esperanza de que al menos nos queda WPA2...

Mi duda es,.... ¿hasta cuándo durará imbatible WPA2? A lo largo de mi vida como consultor de seguridad, cuando una organización me ha pedido asesoría sobre cómo securizar sus redes wireless, he propuesto diferentes alternativas dependiendo del caso. Sin embargo, ha habido algo que, dada la criticidad de la información intercambiada, y la potencia de cálculo de las máquinas utilizadas, he recomendado como algo común: la utilización de tecnología VPN a lo largo de la red wifi.

Un despliegue clásico podría incluir una red wireless conectada contra un firewall que sólo permitiese tráfico VPN hasta un gateway de VPNs (en ocasiones hasta el mismo firewall puede realizar ese papel). Directamente antes de poder conectarse a la red interna, se hace necesario el establecimiento de un túnel VPN. De esta manera, se asociará una IP de rango interno (o un rango VPN) a un interfaz virtual en la máquina cliente de manera similar a como sucede cuando se hace desde Internet. Si confiamos en encapsular nuestro tráfico confidencial a través de la red de redes, ¿por qué no hacerlo en una red mucho menos arriesgada, como puede ser una red inalámbrica?

Para mentes aún más paranoicas, siempre se puede encapsular el tráfico VPN sobre una red wireless que obligue por supuesto un control de acceso por dirección física o MAC, y que utilice además WPA2 para cifrado a nivel de punto de acceso.

Desde SecurityByDefault recomendamos OpenVPN como alternativa libre basada en SSL con clientes para Windows, Linux y Macintosh, de fácil despliegue para este tipo de lides.

Yago recomendó tiempo atrás la utilización de un punto de acceso "fake" para emitir con el mismo SSID aunque en distinto canal en los límites físicos de la organización para engañar a atacantes externos.

¿Y tú, tienes algún otro mecanismo de securización de redes Wireless?

6 comments :

FErArg dijo...

En mi casa/despacho, tengo el WiFi con WPA2 y filtro de MAC's, y las conexiones desde la notebook a internet, pasan por mi PC principal, al que me conecto con NXNomachine, y desde ese PC navego por la web.

Todo el tráfico de la red WiFi interna va por ssh.

---------------------
-= FErArg =-

www.FErArg.com
www.SerInformaticos.es

Lorenzo Martínez dijo...

Eso es una solución bastante buena para asegurar que el tráfico va cifrado de verdad hasta un punto en el cual ya puedes salir a Internet. En mi caso, tengo montado con openvpn en mi "servidor" y con reglas de firewall tengo permitido un filtrado de IP/MAC y servicio OpenVPN. El resto del tráfico está prohibido. De esta manera con mi IP virtual interna sí que navego como si estuviera en mi red interna (no wifi)... otra alternativa es navegar con un túnel SSH + redirección de puertos, hasta un proxy SOCKS o HTTP interno...

Saludos,

Chema Alonso dijo...

@Lorenzo, según tengo entendido la diferencia entre WPA y WEP no son sólo el tamaño de la clave y de los IVS. El uso de TKIP (aun basado en RC4) implica negociación distinta de las claves por cada cliente, mientras que en WEP las claves de cifrado es la misma que la que se usa en autenticación con lo cual con la clave WEP puedes ver el tráfico de todos los demás usuarios mientras que con TKIP (salvo que hagas un bonito ataque de desasociación y robo de sesión de negociación de claves de otro usuario) no puedes.

Escribimos sobre esto en Atacar WPA/WPA2 PSK

Buen trabajo con el blog ;)

Saludos Malignos!

Chema Alonso dijo...

...Y puestos a recomendar, yo me quedo (de momento) con WPA2/RADIUS con EAP-PEAP-TLS (si tu empresa es una red Windows y si no, pues nada un EAP-PEAP-MSCHAPv2. EAP-PEAP

Y una buena wifi superchula con su IPSec campeón.

;)

Lorenzo Martínez dijo...

@Maligno

Excelente el estudio que habéis hecho para atacar el WPA/WPA2 con PSK.

Razón tienes en que el más seguro es EAP-PEAP-TLS (al fin y al cabo la utilización de certificados es lo óptimo en cuanto a seguridad para autenticar tanto al cliente como al punto de acceso y evitar los fakes). Sin embargo, se hace complicado el despliegue en redes grandes con muchos usuarios (por lo que el PSK o pre-shared key es lo más utilizado). La versión con Radius es más compleja para una red casera (no todos pueden tener una máquina con un servidor RADIUS configurado). Yo esta última solución la he utilizado en algún cliente con 802.1X y funciona bastante bien.

La utilización con PSK es la más escalable, pero debido a que es posible el ataque, por problemas inherentes al protocolo, ya puestos a utilizar una pre-shared key, por eso recomiendo una VPN IPSec como encapsulador de todo de manera confiable. ¿Estoy matando moscas a cañonazos?

Un saludo,

PD: Me ha encantado tu blog también, a partir de hoy me lo apunto a mis favoritos diarios. Pude disfrutar de un technet day de Microsoft hace unos años contigo de ponente y aparte de haber aprendido me reí de los chistes que os hacíais con tu compañero al que llamabas "el pureta"

Lorenzo Martínez dijo...

@Maligno

Excelente el estudio que habéis hecho para atacar el WPA/WPA2 con PSK.

Razón tienes en que el más seguro es EAP-PEAP-TLS (al fin y al cabo la utilización de certificados es lo óptimo en cuanto a seguridad para autenticar tanto al cliente como al punto de acceso y evitar los fakes). Sin embargo, se hace complicado el despliegue en redes grandes con muchos usuarios (por lo que el PSK o pre-shared key es lo más utilizado). La versión con Radius es más compleja para una red casera (no todos pueden tener una máquina con un servidor RADIUS configurado). Yo esta última solución la he utilizado en algún cliente con 802.1X y funciona bastante bien.

La utilización con PSK es la más escalable, pero debido a que es posible el ataque, por problemas inherentes al protocolo, ya puestos a utilizar una pre-shared key, por eso recomiendo una VPN IPSec como encapsulador de todo de manera confiable. ¿Estoy matando moscas a cañonazos?

Un saludo,

PD: Me ha encantado tu blog también, a partir de hoy me lo apunto a mis favoritos diarios. Pude disfrutar de un technet day de Microsoft hace unos años contigo de ponente y aparte de haber aprendido me reí de los chistes que os hacíais con tu compañero al que llamabas "el pureta"