Seguridad WiFi, Hacking WiFi

Las redes WLAN pueden y deberían ser seguras. No hay nada irrompible, pero puede levantarse la barrera de defensa contra ataques a la red hasta el punto de que sólo unas pocas personas en todo el mundo puedan penetrar en ella, si es que puede alguna. Lo más probable es que esta gente esté de su parte: con el conocimiento se adquiere responsabilidad. Los maestros de Kung Fu no comienzan peleas. Sobre esto trata en realidad esta sección: subir el listón.



WEP, Wired Equivalent Privacy y WEPlus



Las últimas secciones de este capítulo, antes de dedicarnos a la criptografía aplicada y a la implementación de una autentificación segura y de redes VPN sobre redes inalámbricas, estarán dedicadas a las mejoras propietarias y basadas en estándares para las actualmente vulnerables medidas de protección de los protocolos 802.11.
La vulnerabilidad más anunciada de 802.11 es la inseguridad del protocolo WEP. Ya hemos revisado las debilidades criptográficas de WEP en relación con la reutilización del espacio de vectores de inicialización de claves y el inseguro algoritmo de generación de claves a partir de cadenas. También existen algunos problemas de gestión de claves WEP muy bien conocidos:


•    Todas las implementaciones de cifrado simétrico tienen problemas con la distribución segura de las claves. El protocolo WEP no es una excepción. En el diseño original, se suponía que WEP iba a defender pequeñas redes de una sola celda. Las redes inalámbricas del siglo 21 suelen involucrar a miles de máquinas móviles, lo que hace que la distribución y el cambio manual de las claves WEP sea una pesadilla.
•    La clave WEP proporciona una autentificación de dispositivos y no de usuarios. Si un cracker roba o encuentra un dispositivo perdido, conseguirá acceso a la red inalámbrica con la que este dispositivo esté configurado para conectarse.
 
 Recuerde que el descontento de los empleados supone una amenaza mayor que la de los atacantes externos. Los usuarios de una red inalámbrica que comparten la misma clave WEP pertenecen al mismo dominio de datos, incluso aunque la red inalámbrica esté dividida en distintos dominios de difusión. Todo lo que necesita un atacante interno que conozca el protocolo WEP para escuchar el tráfico /quQ pertenezca a una subred distinta de la WLAN es poner su tarjeta en / modo promiscuo.
Los problemas criptográficos y los de gestión de claves han sido tratados (o al menos se han intentado solucionar) por el comité de estándares del IEEE y diversos fabricantes de equipos inalámbricos y de software.
La primera respuesta de muchos fabricantes fue aumentar el tamaño de la clave WEP implementada en el estándar a 128 bits (el llamado WEP2) o un tamaño mayor. Como ya sabrá, este tipo de enfoque no ayudará contra ningún ataque, excepto ataques de fuerza bruta simples, a no ser que se aumente el espacio de vectores de inicialización.
Probablemente, las primeras soluciones reales para las inseguridades de WEP fueron las propuestas de la RSA acerca del uso de claves por paquete y la eliminación de los primeros bytes de la cadena de la clave. En el próximo capítulo repasaremos brevemente estas sugerencias. Parece ser que el protocolo WEPPlus de Agere/Proxim ha implementado la eliminación de los primeros bytes de la cadena de la clave o una solución parecida con la octava versión del firmware de tarjetas Agere/Proxim. Hemos probado WEPPlus contra AirSnort utilizando el punto de acceso AP 2000 Orinoco y tarjetas Orinoco Gold 802.lia/ b ComboCards (véase figura 10.2), que utilizan WEPPlus, y podemos confirmar que en una sesión de volcado de tráfico que ha durado tres días no hemos descubierto ni un solo marco IV interesante. Por supuesto, si alguno de los clientes de la WLAN no implementa WEPPlus, esta contramedida no servirá para nada porque se producirá una regresión al estándar WEP.
Los modelos Cisco SAFE implementan reglas de rotación de clave que pueden configurarse de forma centralizada en un servidor de control de acceso basado en Windows o en un sistema de registro de acceso basado en UNIX. Por supuesto, la especificación Cisco SAFE moderna es totalmente compatible con WPA, pero aquí vamos a referirnos al sistema inicial que aún tiene amplia difusión, el Cisco Centralized Key Management (CCKM). CCKM garantiza que el cambio de clave WEP se produce de modo transparente para los usuarios finales. Con CCMP, es posible configurar reglas de rotación de clave en los puntos de acceso CiscoAironel y utilizar grabaciones, auditorías
O incluso facturación por el uso de laWLAN utilizando los registros de auditoria de RADIUS. CCMP se configura en función de cada SSID y requiere que en la red esté configurada la autentificación basada en EAP. Un punto de acceso con CCKM habilitado en la red actuará como un servicio de dominio inalámbrico (WDS) y mantendrá una caché con credenciales de seguridad para todos los dispositivos clientes CCKM de la subred. Cisco ha desarrollado también sus propias mejoras al protocolo WEP y una comprobación básica de integridad WEP. Entre estas mejoras se incluyen el protocolo de integridad de claves de Cisco (TKIP) y la comprobación de integridad de mensajes de Cisco (CMIC), que se basan en los primeros desarrollos del grupo de trabajo "i" de 802.11. Pueden activarse en los puntos de acceso Cisco Aironet utilizando los comandos encrypt ion mode cipher ckip, encrypt ion mode cipher emie y encrypt ion mode cipher ckip-cmic para VLAN. Por eso, incluso los modelos Cisco SAFE anteriores a WPA ofrecen un nivel de seguridad suficiente para 802.11 como para poder estar tranquilos. Por supuesto que siguen padeciendo el mismo problema que muchas otras soluciones de seguridad propietarias: hay que disponer de una WLAN uniforme con equipos Cisco Aironet. Por eso no resulta posible con los puntos de acceso inalámbricos públicos o con las redes WLAN de conferencias.

 

Router WiFi basado en Linux 4

Aunque también puede fijar las claves WEP de cliente de HostAP utilizando iwconfig, con este comando no podrá configurar las claves individuales para el soporte de claves unicast de hostapd.
Configurar un punto de acceso perfecto utilizando HostAP y garantizar que este punto de acceso soporta todas las características que acabamos de describir no es una tarea sencilla. Sin embargo, es un buen modo de aprender más acerca de las redes inalámbricas y puede ahorrarle a su empresa o comunidad inalámbrica mucho dinero. Consulte cuánto costaría un router wifi comercial que soporte todas las prestaciones disponibles en una pasarela o punto de acceso a medida basado en Linux. Se sorprenderá. No olvide que la mayoría de las pasarelas inalámbricas comerciales de gama alta no ofrecen prestaciones como punto de acceso y que tendrá que adquirir puntos de acceso adicionales para montar su red.


El principal inconveniente de esta solución agrupada es que existe un único punto de ruptura. Por eso, le sugerimos que desplace algunas funciones a una segunda máquina. Esto se aplica en particular al servidor de autentificación RADIUS. La pasarela inalámbrica debería tener abierto el menor número posible de puertos en el extremo inalámbrico. Con respecto a la seguridad de la propia pasarela, le recomendamos que tenga en cuenta las siguientes medidas de refuerzo:

•    Permita el acceso a la pasarela sólo a los administradores.
•    Elimine cualquier cuenta de usuario innecesaria.
•    No utilice un servidor X Window.
•    Cierre todos los puertos innecesarios.
•    Utilice un cortafuego para el acceso SSH administrativo desde el extremo inalámbrico.
•    Elimine GCC y otros compiladores de la pasarela.
•    Elimine el soporte de lenguajes interpretados como Perl.
•    Aplique el parche de seguridad Open Wall o Grsecurity al núcleo.
•    Configure y ejecute el módulo del núcleo StJude.
•    Utilice Logrotate y envíe los registros a un servidor syslog remóle mediante TCP utilizando syslog-ng.
•    Instale, configure y ejecute Snort.


Para los auténticos paranoicos, siempre existen LIDS y distribuciones de Linux con seguridad mejorada como SELinux de la NSA (National Security Agency) estadounidense o Immunix. Una máquina Linux correctamente configurada y cuidad será lo más segura que pueda ser; no culpe al sistema cuando el fallo real resida en la dejadez del administrador del sistema o en su ignorancia.

 

Router WiFi basado en Linux 3

No obstante, recomendamos usar los filtros de HostAP: es un sistema muy fácil de utilizar y se puede echar del sistema a las máquinas autentificadas sospechosas con facilidad.
Para mejorar la seguridad de nuestro punto de acceso a medida, utilizaremos la sentencia
prism2_param wln0 enh_sec 3  
para emplear valores ESSID ocultos e ignorar las peticiones sonda con el ESSID ANY. La tarjeta con chipset Prism del punto de acceso debe disponer de la última versión del firmware STA para soportar la extensión enh_sec. Compruebe qué extensiones inalámbricas soporta la versión actual de su firmware ejecutando el comando iwpriv wlan0 y compruebe la versión del firmware con prism_diag wlan0. Fíjese en una línea de la salida en la que aparezca la cadena "(station firmware)". Para actualizar el firmware, debería haber compilado HostAP con la función PRISM2DOWNLOADSUPPORT. Esto puede hacerse directamente modificando el archivo de cabecera dr i -ver/modules/hostap_conf ig.h o compilando HostAP con la sentencia
make pci || pccard EXTRA_CFLAGS="-DPRISM2_ DOWNLOAD_SUPPORT". A continuación, ejecute make install, luego depmod -a y utilice la herramienta prism2_srec para actualizar su firmware:
arhontus:#  ./prism2_srec
Usage: prism2_srec   [-vvrfd]   <interface> <srec file name> Options:
-v     verbose  (add another for more verbosity)
-r     download SREC file into RAM  (volatile)
-f     download SREC file into flash  (non-volatile)
-d     dump SREC image into prism2_srec.dump
-i     ignore incompatible interfaces errors
Warning!  This can result in failed upgrade!
No pueden utilizarse al mismo tiempo las opciones - r y - f. Si no se espe¬cifica - r o - f, se muestra un resumen de la imagen y se comprueba la compa¬tibilidad con la tarjeta WLAN sin descargar nada.
Compruebe que su versión de las herramientas de HostAP soporta correcta¬mente la opción   f; de no ser así, será necesario actualizar el firmware con
 
-r cada vez que se reinicie la tarjeta. Puede conseguir las imágenes hexadecimales más recientes del firmware STA en http://www.intersil.com/ design/prism/ss/p2smtrx.asp o http://www.netgate.com/support/prism_firmware/ Ejecute a continuación:

prism2_srec -f wlan0 /ruta/hacia/el/firmware/<archivoimagen.hex>
y compruebe mediante prism2_diag wlan0 si la actualización ha tenido éxito.
Para activar el soporte del protocolo 802.11x, hay que emplear la funcionalidad de autentificador del demonio hostapd. El autentificador de hostapd transporta los marcos entre el peticionario y el servidor de autentifica-ción, que sólo puede ser un servidor RADIUS. Para utilizar el autentificador, tendrá que compilar el controlador HostAP con la sentencia make pe i pecard EXTRA_FLAGS= " -DPRISM2_H0STAPD" o editar el archivo driver/modules/hostap_conf ig . h antes de la compilación. Un ser¬vidor RADIUS externo se configura con las sentencias:
arhontus:/#prism2_param wlan0 ieee_802_11x 1
arhontus:/#hostapd -x -o <dirección IP del AP> -a <dirección IP del servidor RADIUS > -s <secreto compartido entre el AP y el serv.  de autentif.> wlan0
El autentificador de hostapd puede seleccionar automáticamente una clave WEP aleatoria predeterminada para el dominio de broadcast compartida entre todas las estaciones autentificadas. La selección se realiza mediante las opciones -b5 (una clave WEP de 64 bits) o -bl3 (una clave WEP de 128 bits) que se pasan a hostapd. Además, pueden utilizarse las opciones - i 5 o - i 13 para especificar claves unicast individuales para las estaciones. Esto requiere el soporte de claves individuales en el controlador de la estación. Puede establecer las claves individuales utilizando la herramienta hostap_crypt_conf:

arhontus:#  ./hostap_crypt_conf
Usage:  hostap_crypt_conf   [-123456789tpl]   <device>   [addr]    [alg]   [key] Options:
-1  . .   -9    key index  (for WEP) ;  only one index per command
-t    set TX key index  (given with -1  ..   -9)
-p    permanent station configuration  (do not expire data)
-1    list configured keys   (do not use addr or alg)
device    wlan#
addr    station hwaddr or ff:ff:ff:ff:ff:ff for default/
broadcast key
alg    crypt algorithm  (WEP,  NULL,  none)
key    key data  (in hex,  e.g.   '0011223344',  or s:string)
 

Router WiFi basado en Linux 2

En este ejemplo, las direcciones IP se asignan de acuerdo con las direcciones MAC, de forma que el atacante tendría que falsificar la dirección MAC de una máquina legal para conseguir una dirección IP del servidor DHCP. Esto podría confundir a un atacante de bajo nivel durante un tiempo: el servidor está ahí, hay tráfico DHCP, pero no se le asigna ninguna dirección IP.
¿Qué es lo que sucede si se combinan en una sola máquina el punto de acceso, la pasarela, el cortafuego, el servidor de autentificación y el concentrador VPN? Bajo Linux es posible hacer esto. También es posible utilizar una plataforma BSD para crear una máquina de este tipo, pero nuestra forma de hacer las cosas no consiste en escribir acerca de algo sobre lo que no tenemos experiencia práctica.
Configurar un punto de acceso seguro utilizando HostAP es realmente un desafío de hacking de redes mucho más serio que configurar un punto de acceso ilícito en un portátil que funcione mediante Linux, como en el caso descrito en el capítulo 8. La causa es que existen muchas prestaciones avanzadas de HostAP que no suelen ser necesarias para configurar un punto de acceso falso básico, pero que resultan muy prácticas cuando se trata de desplegar un punto de acceso adecuado. Entre estas prestaciones se incluyen las siguientes:
•    Filtrado de direcciones MAC.
•    Valores ESSID cerrados (sí, con HostAP es posible).
•    Soporte de autentificación 802. lx.
•    Sistema de distribución inalámbrica (WDS).
Incluso puede conectar más tarjetas PCI o PCMCIA en una pasarela inalámbrica universal a medida y hacerlas funcionar utilizando el mismo con-trolador HostAP para ofrecer acceso en tres canales distintos para conseguir el balanceo de carga round-robin empleando Netfilter. Además, puede poner una de las tarjetas conectadas en modo de monitorización y utilizarla para ejecutar una herramienta de monitorización de red o de IDS (en el último capítulo verá más detalles sobre cómo conseguir esto).
En este capítulo no vamos a comentar el despliegue de un sistema WDS ni otras características de HostAP que no estén relacionadas directamente con la seguridad. Aún así, trastear con estas configuraciones es muy entretenido y * didáctico. Compruebe cuántas extensiones inalámbricas privadas pueden soportarse con el firmware de su tarjeta y qué maravillas de configuración puede conseguir con prims2_param y hostapd. Más adelante comentaremos los mecanismos de autentificación y las implementaciones de redes VPN en una pasarela inalámbrica basada en Linux, pero aquí vamos a centrarnos en la seguridad de los puntos de acceso y en las prestaciones de nuestras pasarelas inalámbricas a medida.
Para activar el arranque de su punto de acceso que funciona como pasarela inalámbrica, añada los parámetros del punto de acceso al archivo de arranque apropiado. Como ejemplo, en Debían usaremos el archivo /etc/network/ interfaces y añadiremos unas líneas como estas:
auto wlan0
iface wlan0 inet static address 0.0.0.0
up /sbin/iwconfig wlan0 essid ArhOnt-X /sbin/iwconfig wlan0 channel 11 /sbin/iwconfig wlan0 mode Master auto ethO
iface ethO inet static address 0.0.0.0 auto brO
iface brO inet static
address 192.168.1.1 network 192.168.1.0 netmask 255.255.255.0 broadcast 192.168.1.255 bridge_ports wlan0 ethO up
Ya que se trata de Linux, siempre existen varias maneras de conseguir lo mismo (por ejemplo, puede consultar la obra "802.11 Security" de Bruce Potter y Bob Fleck para ver un enfoque distinto). Escoja el método que más le guste.
El filtrado de direcciones MAC con HostAP se lleva a cabo utilizando sus extensiones inalámbricas privadas:
iwpriv wlan0 macemd <valor>
0: política abierta para la ACL  (predeterminada)
1: política de permisos para la ACL
2:  política de denegación para la ACL
3: vacía la lista de control de acceso MAC
4:  echa a todas las estaciones autentificadas
iwpriv wlan0 addmac <direcc mao
añade la dirección MAC a la lista de control de acceso
iwpriv wlan0 delmac <direcc mao
elimina la dirección MAC de la lista de control de acceso

iwpriv wlan0 kickmac <direcc mao
echa a la estación autentificada del AP
Para generar una lista ACL debería utilizar la sentencia iwpriv wlan0 macemd <número de ACL>. El archivo README aconseja mantener dos listas ACL: una para las direcciones MAC que se aceptan y otra para la que se deniegan explícitamente. Puede ser una buena idea. Además, siempre puede utilizar Netfilter para el filtrado de direcciones MAC:
$IPTABLES  -N macfilter
$IPTABLES  -A macfilter -i $WLAN_INTERFACE -m mac  -mac-source de:ad:be:ef:co:de -j ACCEPT
$IPTABLES  -A macfilter  -i   !   $WLAN_INTERFACE  -j  ACCEPT $IPTABLES  -A macfilter -j  LOG $IPTABLES  -A macfilter -j  DROP $IPTABLES  -A FORWARD -j  macfilter

 

Router WiFi basado en Linux 1

A continuación tenemos que garantizar la seguridad de la pasarela que se¬para nuestro punto de acceso o puente o VLAN con conexión inalámbrica del la zona de cable. Como ya hemos mencionado, este tipo de pasarelas no son ni más ni menos que un cortafuego flexible intermedio o completo que trata la interfaz conectada a la WLAN como una interfaz que conecta la red LAN a una red pública insegura. El único requisito específico para la pasarela es disponer de la capacidad de redirigir tráfico VPN si en la WLAN se han implementado redes VPN. Como alternativa, la pasarela puede ser un concentrador VPN si se desea ahorrar en coste en la seguridad de red (lo que no suele ser una buena idea). Si la VPN se basa en la red de transporte (por ejemplo, cIPe), la redirección de tráfico es muy simple: se abren los puertos utilizados por el protocolo VPN y ya está. La redirección de tráfico IPSec es algo más complicada. Tendrá que permitir el uso de los puertos 50 ó 51 así abrir también el puerto UDP 500 para permitir los intercambios IKE. A conti¬nuación mostramos un ejemplo procedente del guión Netfilter de Linux que permite que pase el tráfico IPSec:
iptables -A INPUT -i $EXT -p 50 -j ACCEPT iptables  -A INPUT  -i  $EXT  -p 51   -j  ACCEPT
iptables  -A INPUT -i  $EXT  -p udp  --sport  500  --dport  500  -j  ACCEPT

Es una buena idea establecer entradas estáticas en la tabla ARP para todos los puntos de acceso y servidores críticos conectados a la pasarela. Añada las siguientes líneas a su archivo /etc/re . local si es posible:
arp -s <IP del AP1> <MAC del AP1> arp -s <IP del AP2> <MAC del AP2>
arp -s <IP del concentrador VPN> <MAC del concentrador VPN>
arp -s <IP del servidor RADIUS> <MAC del servidor RADIUS>
arp -s <IP de la pasarela a Internet> <MAC de la pasarela a Internet>
También puede utilizar la pasarela como servidor DHCP. Modifique el   * archivo /etc/dhcpcd. conf para que contenga unas líneas similares a las siguientes:

#    dhcpd.conf #
#    Configuration file for ISC dhcpd  (see  'man dhcpd.conf') #
deny unknown-elients; one-lease-per-client true; authoritative; default-lease-time 604800; max-lease-time 604800;
option subnet-mask 255.255.255.192; option domain-name "dominio.nombre";
subnet 192.168.1.0 netmask 255.255.255.192   { option broadcast-address 192.168.1.63; option routers 192.168.1.2;
option domain-name-servers 192.168.1.2,   192.168.1.3;
option smtp-server 192.168.1.2;
option pop-server 192.168.1.2;
option netbios-name-servers 192.168.1.3;
#Portátiles del departamento de ventas
host sapol  { hardware ethernet <MAC>;    fixed-address 192.168.1.1;
option host-name " sapol";   }
host sapo2  { hardware ethernet <MAC>;    fixed-address 192.168.1.2;
option host-name " sapo2";   }
host sapo3  { hardware ethernet <MAC>;    fixed-address 192.168.1.3;
option host-name  "  sapo3";   }
host sapo4  { hardware ethernet <MAC>;    fixed-address 192.168.1.10;
option host-name  "sapo4";   }
#Portátiles del departamento de cuentas host gebrill  { hardware ethernet <MAC>;  fixed-address 192.168.1.11;  option host-name  "gebrill";   } host gebril2  { hardware ethernet <MAC>;  fixed-address 192.168.1.12;  option host-name  "gebril2";   }
#Portátiles del departamento de acciones host tsetsel  { hardware ethernet <MAC>;  fixed-address 192.168.1.15;  option host-name  "tsetsel";   } host tsetse2  { hardware ethernet <MAC>;  fixed-address 192.168.1.16;  option host-name  "tsetse2";   } host tsetse3  { hardware ethernet <MAC>;  fixed-address 192.168.1.17;  option host-name  "tsetse3";   }
 
Página 2 de 4

Buscar manual o tutorial

Tienda kefir

Búsquedas Relacionadas