
Actualmente se han incrementado de forma considerable los ataques informáticos (phishing, malware, DDOS, accesos no autorizados, entre otros) dirigidos a medianas y pequeñas empresas así como a usuarios finales, según el Informe de Amenazas en Internet 2014 de Symantec. Existen soluciones para proteger la infraestructura tecnológica y la información de una organización contra diversas técnicas utilizadas por los atacantes, pero muy pocas veces podemos encontrar soluciones económicas y que estén orientadas a los usuarios finales.
El objetivo de este artículo es proporcionar una solución de detección de intrusos para redes inalámbricas que permita a un usuario identificar los ataques o intrusiones a dichas redes. Mediante esta publicación describiré todo lo necesario para instalar y configurar OpenWIPS sobre el sistema operativo Raspbian.
A continuación se listan los elementos técnicos:
- Raspberry Pi
- Raspbian
- OpenWIPS-ng
Raspberry Pi
Es una computadora de dimensión pequeña, aproximadamente del tamaño de una tarjeta de crédito; tiene 2 puertos USB, una interfaz de red cableada, una interfaz HDMI (High-Definition Multimedia Interfaz), etc. Es utilizada en proyectos de electrónica y para realizar algunas tareas que se pueden hacer con una computadora de escritorio o un servidor dedicado. Una de las características principales es que el almacenamiento se lleva a cabo mediante una tarjeta de memoria flash SDHC (Secure Digital High Capacity). El costo va de los $350 a los $600 pesos mexicanos. La imagen 1 corresponde al diagrama de una Raspberry Pi modelo B.

Raspbian
Es un sistema operativo (SO) libre basado en Debian (ver imagen 2) optimizado para Raspberry Pi. La imagen (un archivo que contiene la copia completa de un sistema operativo) de este SO se puede obtener desde su sitio oficial http://www.raspbian.org/

OpenWIPS-ng
- Sensor(es): Dispositivo silencioso que captura tráfico inalámbrico y lo envía al servidor para analizarlo. También responde a ataques aunque esta funcionalidad aún no está diseñada en la versión BETA.
- Servidor: Analiza los datos de todos los sensores y puede responder a ataques. También registra y genera una alerta en caso de detectar un ataque.
- Interfaz: Administra el servidor y despliega información acerca de las amenazas de la red inalámbrica detectadas por los sensores.
- Se pueden conectar varios clientes (sensores), no se realiza reensamblaje de tramas (eliminar tramas duplicadas y poner en orden correcto). Si los sensores se encuentran lejos entre ellos y no ven el mismo tráfico, la probabilidad de tener problemas de redundancia disminuye. Se recomienda para está versión usar un sólo sensor.
- Las credenciales predeterminadas para iniciar el sensor y al mismo tiempo conectarse al servidor son sensor1:sensor1.
- Detecta ataques de desasociación, es un tipo de ataque de denegación de servicio inalámbrico donde un atacante puede provocar la desconexión de uno o varios clientes conectados a un AP, así como de fragmentación.
- Sólo se necesita una tarjeta inalámbrica que se pueda poner en modo monitor la cual fungirá como sensor.
- Se lleva un registro de las alertas en tiempo real mediante la interfaz del servidor y además se puede configurar OpenWIPS para almacenar una bitácora de eventos en un archivo del sistema.
Requerimientos de hardware
- Una tarjeta SDHC de 8 GB o más, de preferencia de clase 10 (bus de datos de alta velocidad).
- Tarjeta de red inalámbrica, preferentemente con chipset RT8187L (si no se cuenta con una tarjeta con el chipset especificado, debe garantizarse que se pueda poner en modo monitor).
Requerimientos de software
- Imagen del sistema operativo Raspbian.
- OpenWIPS-ng 0.1 beta 1.
- Conexión a Internet para descargar el software necesario para instalar OpenWIPS.
Implementación
El objetivo del artículo no es explicar cómo se configura Raspbian en la memoria flash SDHC, sin embargo se recomienda el siguiente enlace al lector en donde se explica cómo poder hacerlo en Linux, Windows y Mac OS:
Una vez que esté instalado el SO en la Raspberry Pi, lo siguiente es descargar el código fuente de OpenWIPS:

Descomprimir y desempaquetar se puede hacer de la siguiente manera:


Visualizar el contenido del archivo INSTALL con el siguiente comando:

Como se puede observar en el archivo INSTALL, es necesario contar con software y bibliotecas adicionales, por lo tanto se deben instalar esos requerimientos:

Antes de compilar OpenWIPS es necesario que se borre la bandera –Werror debido a que lo toma como un error del archivo openwips-ng-0.1beta1/common.mak y obliga a terminar la compilación cuando se encuentra un warning o alerta, la eliminación se puede hacer mediante un editor de texto:


Para compilar e instalar OpenWIPS se ejecuta lo siguiente:

Antes de configurar OpenWIPS, se recomienda instalar la suite Aircrack-ng para contar con herramientas complementarias de auditoría en redes inalámbricas. Descargar Aircrack-ng de la siguiente manera:

Para descomprimir y desempaquetar el archivo aircrack-ng-1.2-beta1.tar.gz se utiliza el siguiente comando:

Ubicarse en el directorio generado después del paso anterior:

Para compilar e instalar aircrack-ng se debe ejecutar lo siguiente:

Para configurar la tarjeta de red en modo monitor se necesita instalar iw (es una utilidad de configuración para dispositivos inalámbricos sucesora de iwconfig):

Para comprobar que todo funcione correctamente se debe conectar una tarjeta de red inalámbrica que pueda configurarse en modo monitor (para el desarrollo de este artículo se usó una tarjeta de la marca ALFA Network). Se puede identificar la tarjeta de red inalámbrica de la siguiente manera:

Para conocer el chipset de la tarjeta de red inalámbrica se utiliza el comando airmon-ng:

Para poner la tarjeta en modo monitor se debe ejecutar lo siguiente:

Para verificar la existencia de la interfaz mon0 se puede utilizar iwconfig:

Una vez comprobado que se puede configurar en modo monitor la tarjeta de red inalámbrica (se debe tener en cuenta que fungirá como sensor), se configurará OpenWIPS para poder ejecutarlo posteriormente.

Como recomendación, se debe revisar detenidamente el archivo para que se comprenda todo lo que se puede configurar. Una de las partes importantes a modificar es agregar en una nueva línea la dirección MAC del punto de acceso inalámbrico (AP) que se quiera proteger (en este caso es f4:55:9c:cc:fb:3c) y comentar las líneas que contienen allow_bssid=group1 y allow_client=group1:

Asegurarse de que la protección de los dispositivos del grupo 1 esté habilitada:

Otra configuración importante es especificar la bitácora que registrará los eventos ocurridos, sobre todo las alertas de seguridad, por defecto se guardan en syslog de Raspbian pero se configurará una ubicación diferente:

Se pueden realizar diferentes configuraciones según las necesidades de la red inalámbrica, tales como cambiar la contraseña de acceso de los sensores, agregar clientes que se conectarán al AP, habilitar o deshabilitar complementos, entre otras, pero debido al alcance del artículo, las configuraciones realizadas anteriormente son suficientes para iniciar OpenWIPS.

Si la instalación fue correcta, se mostrará una salida como en la siguiente imagen:

Para iniciar un sensor se ejecuta lo siguiente:

127.0.0.1 es la dirección IP del servidor OpenWIPS,9477 es el puerto por donde se está ofreciendo el servicio de OpenWIPS,sensor1:sensor1 son las credenciales para conectarse con el servidor.
La salida de la instrucción anterior se ve de la siguiente manera:

Si la ejecución del servidor y el sensor es correcta, entonces ya se tiene instalado y configurado un sistema de detección de intrusos inalámbrico, aunque las siglas de OpenWIPS hacen creer que mitiga ataques, en esta fase del proyecto sólo puede detectar algunos, la parte de contención está planeada para la siguiente versión, sin embargo, la ventaja de que sea un proyecto de código abierto es que se pueden desarrollar varios complementos que permitan crear un IPS inalámbrico.
- El nuevo paradigma de seguridad en redes inalámbricas
- Evolución de los sistemas de detección, prevención y análisis de incidentes
- The Honeynet Project Map