Un IDS basado en host analiza diferentes áreas para determinar el uso incorrecto (actividades maliciosas o abusivas dentro de la red) o alguna intrusión (violaciones desde afuera). Los IDSes basados en host consultan diferentes tipos de registros de archivos (kernel, sistema, servidores, red, cortafuegos, y más) y comparan los registros contra una base de datos interna de peculiaridades comúnes sobre ataques conocidos. Los IDSes basados en host de Linux y Unix hacen uso extensivo de syslog y de su habilidad para separar los eventos registrados por severidad (por ejemplo, mensajes menores de impresión versus advertencias importantes del kernel). Los IDSes basados en hosts filtran los registros (lo cual, en el caso de algunas redes y registros de eventos del kernel pueden ser bastante detallados), los analizan, vuelven a etiquetar los mensajes anómalos con su propia clasificación de severidad y los reúne en su propio registro para que sean analizados por el administrador.
Los IDSes basados en host también pueden verificar la integridad de los datos de archivos y ejecutables importantes. Funciona verificando una base de datos de archivos confidenciales (y cualquier archivo añadido por el administrador) y crea una suma de verificación de cada archivo con una utilidad de resúmen de archivos de mensajes tal como md5sum (algoritmo de 128-bit) o sha1sum (algoritmo de 160-bit). El IDS basado en host luego almacena las sumas en un archivo de texto plano y periódicamente compara las sumas de verificación contra los valores en el archivo de texto. Si cualquiera de estas sumas no coinciden, el IDS alertará al administrador a través de un correo electrónico o a un mensaje al celular. Este es el proceso utilizado por Tripwire, el cual es discutido en la Sección 9.2.1.
Tripwire es el IDS basado en host más popular para Linux. Los desarrolladores de Tripwire, Tripwire, Inc., abrieron recientemente el código fuente para la versión Linux y lo licenciaron bajo los términos de la Licencia Pública General GNU.Tripwire está disponible desde http://www.tripwire.org/.
![]() | Nota |
---|---|
Tripwire no está incluido con Red Hat Enterprise Linux y tampoco es soportado. Se ha incluido en este documento como una referencia para aquellos usuarios que estén interesados en utilizar esta popular aplicación. |
El Manejador de paquetes RPM es otro programa que puede ser usado como un IDS basado en host. RPM contiene varias opciones para consultar paquetes y sus contenidos. Estas opciones de verificación son invalorables para un administrador que sospeche que sus archivos de sistema y ejecutables críticos hayan sido modificados.
La lista que se muestra a continuación detalla algunas opciones para RPM que puede utilizar para verificar la integridad de los archivos en un sistema Red Hat Enterprise Linux. Consulte el Manual de administración del sistema de Red Hat Enterprise Linux para ver información completa sobre el uso de RPM.
![]() | Importante | |
---|---|---|
Algunos de los comandos en la lista que sigue requieren que importe la llave pública GPG de Red Hat en su llavero de RPM. Esta llave verifica que los paquetes instalados en su sistema contengan una firma de paquete Red Hat, la cual asegura que sus paquetes se originaron desde Red Hat. La llave se puede importar con el comando siguiente (sustituyendo <version> con la versión de RPM instalada en su sistema) ejecutado como root:
|
La opción -V verifica los archivos en el paquete instalado llamado nombredepaquete. Si no muestra ninguna salida y termina, significa que ninguno de los archivos han sido modificados desde la última vez que la base de datos de RPM fue actualizada. Si aparece un error, tal como
S.5....T c /bin/ps |
entonces el archivo ha sido modificado de alguna forma y necesita evaluar si desea mantener el archivo (tal como en el caso de archivos de configuración modificados en el directorio /etc/) o elimine el archivo y reinstale el paquete que lo contiene. La lista siguiente define los elementos de la cadena de 8 caracteres ( S.5....T en el ejemplo de arriba) que notifica sobre una falla de verificación.
. — La prueba ha pasado esta etapa de la verificación
? — La prueba ha encontrado un archivo que no se pudo leer, lo que es muy probable se trate de un problema de permisos de archivos
S — La prueba ha encontrado un archivo que es más pequeño o más grande que el instalado originalmente en el sistema
5 — La prueba ha encontrado un archivo cuyas sumas de verificación md5 no coinciden con las sumas originales del archivo cuando este fue instalado
M — La prueba ha detectado un error de permisos o de tipo de archivo
D — La prueba ha encontrado una diferencia en el número minor/major de un archivo de dispositivo
L — La prueba ha encontrado un enlace simbólico que ha sido modificado a otra ruta de archivos
U — La prueba ha encontrado un archivo que tiene su atributo de propiedad del usuario modificado
G — La prueba ha encontrado un archivo que tiene su atributo de propiedad del grupo modificado
T — La prueba ha encontrado errores de verificación mtime en el archivo
La opción -Va verifica todos los paquetes instalados y encuentra cualquier falla en sus pruebas de verificación (similar a la opción -V, pero con más detalles en la salida puesto que verifica cada paquete instalado).
La opción -Vf verifica archivos individuales en un paquete instalado. Esto puede ser muy útil si desea realizar verificaciones rápidas de un archivo sospechoso.
La opción -K es útil para verificar las sumas de verificación md5 y la firma GPG de un archivo de paquetes RPM. Esto es útil para verificar si un paquete que desea instalar está firmado por Red Hat o cualquier otra organización para la cual usted posee la llave pública GPG importada en un llavero GPG. Un paquete que no haya sido firmado adecuadamente producirá un mensaje de error similar a lo siguiente:
application-1.0.i386.rpm (SHA1) DSA sha1 md5 (GPG) NOT OK (MISSING KEYS: GPG#897da07a) |
Tenga cuidado cuando instale paquetes que no esten firmados pues estos no son aprobados por Red Hat, Inc. y podrían contener código malicioso.
RPM puede ser una herramienta muy poderosa, como se evidencia por sus numerosas herramientas de verificación para paquetes instalados y archivos RPM. Se recomienda que cree una copia de respaldo de los contenidos de su directorio de base de datos RPM (/var/lib/rpm/) a un medio de sólo lectura, tal como un CD-ROM, después de instalar Red Hat Enterprise Linux. De esta forma puede comparar de forma segura los archivos y paquetes con la base de datos de sólo lectura, en vez de con una base de datos en el sistema, pues usuarios maliciosos pueden dañar esta base de datos.
La lista siguiente discute algunos de los otros sistemas de detección de intrusos populares basados en host que se encuentran disponibles. Refiérase a los sitios web de las utilidades respectivas para más información sobre cómo instalarlos y configurarlos.
![]() | Nota |
---|---|
Estas aplicaciones no están incluídas con Red Hat Enterprise Linux y no son soportadas. Han sido incluidas en este documento como una referencia para los usuarios que podrían estar interesados en evaluar tales aplicaciones. |
SWATCH http://www.stanford.edu/~atkins/swatch/ — El WATCHer (SWATCH) simple utiliza archivos de registro generados por syslog para alertar a los administradores de las anomalías, basándose en los archivos de configuración del usuario. SWATCH fué diseñado para registrar cualquier evento que el usuario desee añadir en el archivo de configuración; sin embargo, ha sido adoptado ampliamente como un IDS basado en host.
LIDS http://www.lids.org — El Sistema de detección de intrusos (Linux Intrusion Detection System, LIDS) es un parche del kernel y una herramienta de administración que también puede controlar la modificación de archivos a través de las listas de control de acceso (ACLs) y proteger procesos y archivos, hasta del usuario root.