.:[OSSEC, la referencia de los HIDS] El campo de los detectores de intrusos siempre me ha fascinado, la idea en sí misma de un IDS es genial: un sistema que me permita saber cuándo y cómo soy atacado e incluso efectuar acciones reactivas ante dichos ataques. En un mundo ideal los detectores de intrusos serían la panacea de la seguridad informática pero no estamos en un mundo ideal. No obstante estamos en un campo interesantísmo. Hay 3 tipos de detectores de intrusos: Host IDS (HIDS): los sensores se encuentran en cada maquina y por tanto vigilan unicamente dicha maquina. Network IDS (NIDS): los sensores se encuentran en segmentos de red y por tanto vigilan el trafico de la misma. Distributed IDS (DIDS): en la práctica se trata de una serie de NIDS que se comunican con un sensor central, ideal para VPN's. Todo el mundo que haya oido hablar de detectores de intrusos estará pensando en Snort, sin duda el rey de los NIDS OpenSource. Esta entrada sin embargo es para hablar de OSSEC, un HIDS que he utilizado desde hace tiempo pero que me ha sorprendido gratamente en sus ultimas versiones y que ha incorporado una interfaz web para visionar las alertas. OSSEC es un detector de intrusos en host que proporciona análisis de logs, verificación de integridad de ficheros( gracias a OSSEC he dicho adiós a AIDE ), monitorización del registro de Window$, detección de rootkits en tiempo real, etc y que permite configurar respuestas activas. Funciona en multitud de sistemas operativos como Linux, OpenBSD, FreeBSD, MacOS, Solaris y Window$. En esta entrada comentaré brevemente como montarnos un OSSEC sobre Linux sin respuesta activa( no se os puede dar todo masticado ) y configuraremos la interfaz web para ver las alertas de forma cómoda y sencilla. .: [ INSTALACIÓN ] Lo primero es bajarnos el agente para Linux, es muy sencillo solo hay que ejecutar: # wget http://www.ossec.net/files/ossec-hids-1.3.tar.gz Descomprimimos el fichero # tar zxvf ossec-hids-1.3.tar.gz En el directorio resultante ejecutamos el script de instalación: # ./install.sh Este script nos deja instalado el OSSEC con la configuración por defecto, para afinarla solo tenemos que modificar el fichero /var/ossec/etc/ossec.conf pero eso es cosa vuestra. Un aspecto a destacar en la instalación es que OSSEC se instala específicamente para el núcleo de Linux que se esté ejecutando en ese momento, por lo tanto si cambiamos de kernel es necesario instalar nuevamente OSSEC. Para inicializar OSSEC debemos ejecutar el script de control: # /var/ossec/bin/ossec-control start No obstante OSSEC detecta el tipo de Linux en el que se está ejecutando y crea un script de inicio adecuado para cada uno, en mi caso para Slackware Linux creó el script /etc/rc.d/rc.ossec El sistema de detección de intrusos utiliza 4 procesos: /var/ossec/bin/ossec-maild /var/ossec/bin/ossec-execd /var/ossec/bin/ossec-analysisd /var/ossec/bin/ossec-logcollector /var/ossec/bin/ossec-syscheckd /var/ossec/bin/ossec-monitord Aunque no lo parezca por las grandes prestaciones que tiene, OSSEC no consume ni memoria ni CPU en exceso. .:[ INTERFAZ WEB ] El problema cuando instalamos verificadores de integridad, IDS's, etc suele ser que en teoría proporcionan multitud de beneficios pero en la practica la gestión de las alertas resulta tan tediosa que no merece la pena su uso. Para que no suceda esto último los chicos de OSSEC han desarrollado una interfaz web escrita en php que permite la consulta rapida y sencilla de las alertas. Es una interfaz que si bien no está aún muy madura, ya tiene beneficios y todo apunta a que se están volcando mucho en su desarrollo. Prueba de ello es que existe un Wiki creado unicamente para ella con una lista de funciones pendientes por desarrollar muy interesante. Instalarla es muy sencillo una vez que tengamos ya en funcionamiento nuestro servidor LAMP( en realidad con un LAP es suficiente ), apenas unos pocos y sencillos pasos. Descargamos la interfaz web: # wget http://www.ossec.net/files/ui/ossec-wui-0.2.tar.gz La descomprimimos en el Document Root de nuestro servidor web: # tar zxvf ossec-wui-0.2.tar.gz Entramos en el directorio resultante y ejecutamos el scrip de instalación: # ./setup.sh Añadimos en el fichero /etc/group el grupo de nuestro servidor web al grupo ossec, por ejemplo si nuestro servidor se ejecuta con el usuario nobody la linea quedaría similar a esta: ossec:x:1003:nobody Una vez realizado esto ya deberíamos poder ver las alertas introduciendo en el navegador la ruta de la interfaz web. Hay que destacar que aún no se permite eliminar alertas, hacer gráficos, etc, pero todo se andará, no nos podemos quejar ya que es la versión 0.2 y nos la venden por el módico precio de 0 €. Como nota final quiero añadir que normalmente será necesario incluir alguna restricción sobre la interfaz web, para que no pueda visualizarla cualquiera, esto puede restringirse desde Apache configurando una autenticación. En estos momentos solo ofrecemos información porque no se permite el borrado de alertas, pero en el futuro no configurar una autenticación hacia la interfaz web podría dar lugar a un importante agujero de seguridad.