28
UAX_Texto(01).dot Tecnologías para la Seguridad 7 Sistemas de detección de intrusiones UAX010_07_V(01)

PUNTE SEG INF

Embed Size (px)

Citation preview

Page 1: PUNTE SEG INF

UA

X_T

exto

(01)

.dot

Tecnologías para la Seguridad

7 Sistemas de detección de intrusiones

UA

X01

0_07

_V(0

1)

Karim
Page 2: PUNTE SEG INF

Sistemas de detección de intrusiones

ÍNDICE

MOTIVACIÓN�..................................................................................................�

PROPÓSITOS�..................................................................................................�

PREPARACIÓN PARA LA UNIDAD.............................................................................�

1. INTRODUCCIÓN A LOS SISTEMAS DE DETECCIÓN DE INTRUSOS�.......................................��1.1. CLASIFICACIÐN DE LOS IDS..............................................................................................� 1.2. COMPONENTES DE LOS IDS............................................................................................���

2. TRABAJANDO CON UN IDS�.............................................................................1�2.1. INSTALACIÓN Y PRIMEROS PASOS�....................................................................................�1� 2.2. UTILIDADES ADJUNTAS�.................................................................................................�1� 2.3. TRABAJANDO CON TRIPWIRE�.........................................................................................�1�

2.3.1. INICIALIZANDO EL ENTORNO�...........................................................................................................�1� 2.3.2. CONTROL DE INTEGRIDAD�...............................................................................................................�1�2.3.3. ACTUALIZACIÓN DE LA BASE DE DATOS...............................................................................................��

2.3.4. ACTUALIZACIÓN DE POLÍTICAS.........................................................................................................���

CONCLUSIONES�.............................................................................................2�

RECAPITULACIÓN�...........................................................................................2�

AUTOCOMPROBACIÓN�......................................................................................2�

SOLUCIONARIO..............................................................................................2�

PROPUESTAS DE AMPLIACIÓN�.............................................................................��

BIBLIOGRAFÍA�................................................................................................��

Unidad  didáctica  71

Page 3: PUNTE SEG INF

Sistemas de detección de intrusiones

MOTIVACIÓN

Sentirnos invulnerables frente a ataques informáticos no es un buen enfoque

para un analista de seguridad o un responsable de seguridad en una infraestruc-

tura informática. Hay que ser conscientes de que dichos ataques son cada vez

más avanzados y, en cualquier momento, pueden afectar a nuestros activos

tecnológicos.

Desde luego, hay que poner todos los medios que estén en nuestras manos

para protegernos, pero, una vez protegidos, ¿sabrías concluir cuando se está

siendo víctima de un ataque? ¿conoces las herramientas necesarias para tener

toda la información posible sobre el origen y el alcance de la intrusión?

Unidad  didáctica  7  

2

Page 4: PUNTE SEG INF

Tecnologías para la Seguridad

PROPÓSITOS

Gracias a esta unidad podrás:

� Conocer y profundizar en una tecnología de gran importancia en la pro-

tección de redes y sistemas: los sistemas de detección de intrusos.

� Distinguir los tipos de sistemas de detección de intrusos y elegir el más

adecuado a cada necesidad.

� Proteger en detalle la integridad de un sistema, detectando posibles

ataques en el mismo, a través de un potente detector de intrusos de

host: Tripwire.

Unidad  didáctica  7  

3

Page 5: PUNTE SEG INF

Sistemas de detección de intrusiones

PREPARACIÓN PARA LA UNIDAD

En esta unidad se presentará una tecnología clave para la fortificación de una

infraestructura, como son los sistemas de detección de intrusos. Estos nos

permitirán evidenciar posibles actividades no autorizadas, en incluso obtener

detalles sobre las mismas, lo que nos permitirá concluir detalles como origen o

alcance de tales actividades.

Posteriormente se profundizará en el trabajo con un sistema de detección de

intrusos en concreto, como es Tripwire. Una vez presentada tal herramienta, y

explicados sus componentes, se verán las acciones de administración de la

misma con las que se deberá estar familiarizado para una correcta protección

de los servidores o máquinas donde se despliegue.

Unidad  didáctica  7  4

Karim
Page 6: PUNTE SEG INF

Sistemas de detección de intrusiones

1. INTRODUCCIÓN A LOS SISTEMAS DE DETECCIÓN DEINTRUSOS

Se podría definir los sistemas de detección de intrusos, más conocidos

como IDS (Intrusion Detection System), como programas de software o

sistemas de hardware que automatizan procesos de monitorización de

eventos que ocurren en una red o en un sistema, analizando posteriormente

dichos eventos o firmas para detectar problemas de seguridad. En el caso de

que además realicen algún tipo de evento o acción preestablecida al haber

detectado un problema de seguridad, estos elementos se denominan

sistemas de prevención de intrusos o IPS (Intrusion Prevention System).

Se podría decir que los IDS son sistemas que permiten un comportamiento reactivo y de detección/corrección ante una potencial intrusión, a diferencia de los IPS, que permi-tirían tomar un papel más proactivo frente a posibles ata-cantes.

Sus principales funcionalidades, son:

� Previenen problemas de comportamiento de abusos en el sistema o la red.

� Detectan ataques y otras violaciones de seguridad.

� Detectan las vulnerabilidades de una red o sistema.

� formación sobre diagnóstico y corrección de

problemas de seguridad.

Proporcionan información acerca de los intrusos que intentan acceder

a la red o sistemas, de in

Unidad  didáctica  7  5

Karim
Karim
Page 7: PUNTE SEG INF

Tecnologías para la Seguridad

, con lo que reforzarán el control del tráfico de red que

atraviesa la red a través de routers y firewall. Los IDS son un complemento a

estos otros sistemas.

1.1. CLASIFICACION DE LOS IDS

En el mercado existe una gran variedad de IDS, que se diferencian en cuanto a

la metodología de la detección de intrusos y cómo es su funcionamiento. Una

clasif

mente estos IDS son muy simples y se pueden aplicar

-

Cuando se diseña una infraestructura perimetral de seguridad, en la mayoría de

los casos en las redes a proteger se incorpora un firewall como único elemento,

por lo que la seguridad que pueda dar este tipo de elementos de defensa es a

veces insuficiente. Esto es debido a que una parte de los firewalls que se im-

plementan carece de las funcionalidades que pueden aportar los IDS. Cuando

una trama de cualquier protocolo pasa a través de un firewall, verifica si cumple

una serie de reglas preestablecidas por los administradores del sistema, si las

cumple atraviesa el firewall, si no son rechazadas. Cuando estos sistemas verifi-

can las tramas, algunos de ellos no son capaces de realiza un análisis en pro-

fundidad en cuanto al contenido de la trama, por ejemplo en la parte que trans-

porta los datos, determinar actividades anómalas, incorrectas o ilegales.

Los niveles de control deberían ser reforzados con la implementación de este

otro tipo de sistemas

icación básica de los algoritmos que utilizan los IDS podría ser la siguiente:

Basados en patrones/firmas simples: éstos buscan secuencias fijas

en cada paquete que analizan; si éste coincide con una firma conocida

que se encuentra en su base de datos lo tratan como un potencial ata-

que. El patrón de ataque normalmente es definido básicamente por un

servicio o puerto, esto da lugar a que el análisis sea rápido. Para proto-

colos o programas que normalmente no utilizan los puertos conocidos,

como los troyanos, puede ser complicado detectarlos. Por ejemplo, un

paquete TCP con destino al puerto 12345 y que puede contener “peli-

gro esto es un ataque” como cadena, podría ser detectado por este ti-

po de IDS. Obvia

en todos los protocolos, además de tener una relación directa con la

firma de ataque.

Basados en la coincidencia de los patrones de estado: en este caso

no sólo se verifica un paquete de modo aislado como lo hacen los IDS

anteriores, sino que verifican el flujo de o sesión a la pertenece el paque-

te. En este caso el IDS analiza las firmas de ataques contra todo el flujo

de las sesiones que le llegan. En este caso el IDS tiene que ser capaz de

ordenar los paquetes que le llegan y establecer todo el flujo de comuni-

cación y analizarlo. En una comparación con lo anterior, aquí el IDS tiene

que determinar tanto el protocolo utilizado, TCP, el puerto de comunica-

ción 12345 y la firma “peligro esto es un ataque”, pero con la diferencia

que la firma en el anterior tenía que estar integrada en un solo paquete,

mientras que aquí podría detectar un ataque aunque en el primer paque

Unidad  didáctica  7  6

Page 8: PUNTE SEG INF

Sistemas de detección de intrusiones

te viajase “peligro”, en el segundo “esto”, en el tercero “es”, en el cuarto

“un” y en el quinto “ataque”, porque es capaz de analizar todo el flujo.

En los IDS Basados en la coincidencia de los patrones de estado pueden detectarse muchos falsos positivos (si la firma no es muy específica), las modificaciones de ataques pueden ser no detectadas (falsos negativos) y se requieren múltiples firmas de ataques para detectar una vulnerabili-dad.

debidas a variaciones en alguno

de los campos del protocolo, longitud de campos o a los argumentos

� Firmas basadas en algoritmos heurísticos: están basad s en algo-

ritmos que evalúan el tráfico que pasa por la red desde un punto de vis-

ta estadístico y trazan líneas base de comportamiento. Por ejemplo, a

través de estos algoritmos se puede detectar acceso a unos determi-

nados puertos por un determinado sistema cuando la red funciona de

forma normal, pero cuando hay una variación en este comportamiento

el sistema genera alarmas sobre esto. Este tipo de IDS tiene que estar

continuamente ajustando su configuración, ya que de alguna manera, si

el comportamiento en un punto en el tiempo se cree normal, éste pue-

de cambiar también, por ejemplo, imaginemos analizar el protocolo

HTTP en un momento dado, ocurre algún suceso informativo extraordi-

nario y el tráfico HTTP se eleva considerablemente, el IDS lo tratará

como un potencial ataque dando lugar a un falso positivo.

Firmas basadas en decodificación de protocolos: es una extensión

de la anterior. Estas clases de firmas se implementan decodificando los

elementos que componen el flujo de información de la misma manera

tanto como cliente o como servidor en el proceso de comunicación.

Cuando los elementos de un protocolo son identificados, el IDS aplica

las reglas definidas en los RFC para tratar de encontrar alguna violación

de éstos. Algunas de estas firmas son

que utilizan. Este tipo de IDS minimiza los falsos positivos, pero requie-

re bastante tiempo en su desarrollo.

Unidad  didáctica  7  7

Page 9: PUNTE SEG INF

Tecnologías para la Seguridad

Otro tipo de clasificación de IDS es dependiendo de dónde se instalan y qué

sistemas tienen que monitorizar. En esta clasificación los IDS son:

� NIDS (Network-Based Intrusion Detection System) o IDS de red:

éstos son los IDS que se pueden instalar en sistemas independientes o

en aquéllos que están ejecutando otras aplicaciones, para monitorizar

el tráfico que atraviesa por un segmento de red. Dependiendo de la ar-

quitectura de la red, pueden ser implementados varios de éstos en ca-

da segmento de red (delante del router, entre el router y el firewall, en la

DMZ, entre la DMZ y la red interna, etc.) como sensores y enviar los da-

tos para su análisis a consolas centralizadas.

� HIDS (Host-Based Intrusion Detection System) o IDS de host: está

ejecutándose en un solo sistema y sólo monitoriza a éste. Cuando se

tienen aplicaciones críticas en sistemas independientes, se podría im-

plementar este tipo de IDS y así analizar de forma más detallada los

eventos que ocurren entre la red y dicho sistema.

1.2. COMPONENTES DE LOS IDS

Los IDS se suelen componer de tres componentes funcionales fundamentales:

� Origen de la información: desde donde se suministra la información

usada para determinar dónde ha intentado penetrar un intruso. Esos

orígenes pueden ser de los diferentes niveles de monitorización del sis-

tema, de la red, del host o de las aplicaciones.

� Análisis: parte del IDS que organiza y hace que los eventos derivados

del origen de la información sean catalogados como intentos de intru-

sión o que ha tenido lugar una intrusión efectiva.

� Respuesta: conjunto de acciones que el sistema puede tomar para de-

tectar/eliminar las intrusiones. Estas acciones pueden ser activas (inter-

venciones automáticas) o pasivas (informes).

Los IDS se suelen componer de cuatro componentes lógicos fundamentales:

� Motor: componente que desensambla y ensambla los paquetes que

pasan por él, analizándolos y comparándolos con firmas o líneas de

comportamiento.

� Base de datos: componente que almacena los registros, alertas y alar-

mas del IDS.

Unidad  didáctica  7  

8

Page 10: PUNTE SEG INF

Sistemas de detección de intrusiones

El esquema lógico de la base de datos tiene que ser co-herente con las entradas que pueda establecer el motor en ésta.

� Consola: componente donde se visualizan los resultados de los análisis

del IDS.

� Aplicación de análisis: recoge los datos de la base de datos y realiza

análisis estadísticos de varios parámetros.

Unidad  didáctica  7  

9

Page 11: PUNTE SEG INF

Tecnologías para la Seguridad

2. TRABAJANDO CON UN IDS

En general, cuando se hace mención a sistemas IDS de forma genérica, suele ir

encaminado hacia NIDS o sistemas IDS de red, los cuales centran su actividad

de análisis en eventos de red, monitorizando el tráfico generado y recibido en un

determinado entorno, y alertando ante comportamientos sospechosos. Sin em-

bargo, los HIDS presentan toda su actividad de forma local en el sistema en el

que sean desplegados, controlando los posibles cambios que se produzcan en

el mismo y realizando su función de alerta al percibir determinados cambios, por

ejemplo, e

máquina.

n la manipulación de los ficheros de registro almacenados en la

Tanto NIDS como HIDS están ampliamente extendidos y son piezas clave en entornos de seguridad, donde debe contro-larse tanto la actividad de red como los posibles accesos y cambios no autorizados en determinadas máquinas.

entornos más sencillos, pudiendo efectuar ejemplos más claros y constructivos.

de su versión comer-

cial, que podemos encontrar en el sitio Web de Tripwire.

Con objeto de poder ver más de cerca uno de estos sistemas a continuación

profundizaremos en la operativa de un HIDS, pues estos se adecuan mejor a

Centrándonos ya en los sistemas HIDS, podemos encontrar en Tripwire uno de

los referentes en cuanto a sistema de detección de intrusos a implantar en ser-

vidores GNU/Linux. Cabe decir que dicho aplicativo cuenta con una forma de

distribución siguiendo la filosofía de código libre, además

Unidad  didáctica  7  10

Karim
Page 12: PUNTE SEG INF

Sistemas de detección de intrusiones

2.1. INSTALACIÓN Y PRIMEROS PASOS

Como ya se ha dicho, Tripwire constituye un proyecto de código abierto, con lo

que podemos recurrir directamente a sus fuentes, mantenidas y versionadas en

la Web de la versión libre del producto (http://sourceforge.net/projects/tripwire).

Una vez descargada la última versión del aplicativo, procederemos a ejecutar

con permisos de administrador el script install.sh, presente en la carpeta install

del conjunto de ficheros que acabamos de descargar. Concretamente, la última

versión a fecha de composición del presente texto data del 21 de noviembre del

año 2011, siendo ésta la 2.4.2.2.

Sin embargo, en las distribuciones más extendidas de GNU/Linux, podemos

recurrir a las herramienta de gestión de software que brindan (yum, yast2, apt…)

para facilitar la tarea de instalación. Dichas herramientas simplificarán el proce-

so, liberándonos de problemas de dependencias de paquetes o posibles fallos

que puedan darse durante la instalación a partir del código fuente.

Figura1: Instalación de Tripwire en un sistema Ubuntu. Fuente: Elaboración propia

Unidad  didáctica  7  

11

Page 13: PUNTE SEG INF

Tecnologías para la Seguridad

Una vez finalizada la instalación realizaremos una breve aproximación a los nue-

vos ficheros que han sido creados en el sistema tras la misma. Sin duda, uno de

los ficheros de mayor relevancia para la gestión del HIDS será el que permita

definir las políticas de control, es decir, qué información de nuestro sistema mo-

nitorizar y ante qué eventos generar alarmas. En el caso de Tripwire, dicho

fichero es por defecto twpol.txt, que consiste en la definición de estas reglas y

otras variables necesarias para el correcto funcionamiento de la aplicación. Otro

fichero que determinará en mayor forma la configuración de Tripwire es

twcfg.txt, dentro del cual se fijan las ubicaciones de otros ficheros relaciona-

dos, así como otras preferencias a personalizar por el administrador.

Estos ficheros, de especial importancia para el funciona-miento del HIDS, son cifrados y firmados por Tripwire con la clave introducida durante el proceso de instalación. De esta forma, una vez asegurados debidamente, twpol.txt y twcfg.txt pasarán a llamarse respectivamente tw.pol y tw.cfg, siendo almacenados por defecto en el directorio /etc/tripwire/ del sistema.

Es una medida prudente que, tras revisar el contenido de los ficheros en claro y

una vez sea almacenada una copia cifrada de los mismos, los primeros sean

eliminados, pues supondría un potencial punto de revelación de información a

un posible atacante del sistema.

Observando twcfg.txt podemos ver que se basa en un listado de asignaciones

de valores concretos a variables de la aplicación. Debemos prestar atención a

algunos de ellos, adecuando su valor debidamente a la configuración concreta

de nuestro sistema. Podemos destacar los siguientes:

� POLFILE: Valor por defecto /etc/tripwire/tw.pol. Especifica la ubicación

del fichero de políticas.

� DBFILE: Valor por defecto /var/lib/tripwire/$(HOSTNAME).twd. Especifi-

ca la ubicación del fichero que almacena la base de datos.

� REPORTFILE: Valor por defecto /var/lib/tripwire/report/$HOSTNAME-

$DATE.twr. D nde está albergados los informes que genera

Tripwire cada vez que hace una comprobación de integridad. Como

vemos, cada fichero vendrá identificado, gracias a las variables de

entorno, por el nombre de la máquina en la que se ejecuta el HIDS y la

fecha en la que se realizó la comprobación.

Unidad  didáctica  7  

12

Page 14: PUNTE SEG INF

Sistemas de detección de intrusiones

� SITEKEYFILE: Valor por defecto /etc/tripwire/site.key. Ubicación de la

clave empleada para firmar ficheros comunes a varios sistemas.

� LOCALKEYFILE: Valor por defecto /etc/tripwire/$HOSTNAME-local.key.Ubicación de la clave empleada para firmar ficheros s lo accesibles porel sistema local.

Como vemos, muchos de los parámetros de configuración están fijados respec-

to a variables de entorno predefinidas. Por tanto, deberemos comprobar que

dichas variables mantienen valores correctos. La forma más sencilla de hacer

esta comprobación, por ejemplo para $HOSTNAME, sería ejecutar desde línea

de comandos:

# echo $HOSTNAME

y observar el valor devuelto, comprobando que éste es el esperado.

El fichero de configuración, tal y como vemos, cuenta con diversos parámetros

y opciones, con lo que se invita a consultar la página del manual ofrecido por

Tripwire, ejecutando:

# man twconfig

En ella podremos encontrar información detallada sobre cada uno de los aspec-

tos configurables a través del fichero twcfg.txt.

2.2. UTILIDADES ADJUNTAS

La instalación de Tripwire ofrece una serie de aplicativos a través de los cuales

se realizará la gestión y administración del sistema HIDS en el sistema. Dichos

programas son:

� Tripwire. Se trata del programa principal. Es el que aporta las funciona-

lidades de inicialización de la base de datos, comprobación de la inte-

gridad de los ficheros del sistema, actualización de la base de datos y

actualización de las políticas.

� Twprint. Empleado para mostrar los informes (con el parámetro -m r)

o los ficheros de bases de datos (parámetro –m d) en un formato de

texto plano legible, adecuado para su consulta por parte del adminis-

trador.

Unidad  didáctica  7  

13

Page 15: PUNTE SEG INF

Tecnologías para la Seguridad

� Twadmin. Front-end de administración para tareas como:

� creación y consulta de ficheros de configuración

� creación, consulta y sustitución del fichero de políticas

� cifrado y descifrado de ficheros implicados

� generación de nuevas claves de cifrado

� Siggen. Utilidad empleada para generar y mostrar los hashes de un fi-

chero para comprobar su integridad. Estos hashes son el método que

emplea Tripwire internamente para el análisis de los ficheros monitori-

zados. Los formatos de hash soportados son Haval, SHA/SHS, MD5, y

CRC32.

2.3. TRABAJANDO CON TRIPWIRE

Una vez finalizada la instalación y sabiendo ya los aspectos principales del HIDS

en cuestión, comenzaremos a detallar lo que serán las tareas más habituales, y

los pasos a seguir, durante la gestión de Tripwire.

2.3.1. INICIALIZANDO EL ENTORNO

Sin duda, una de las primeras labores a realizar por el administrador es la gene-

ración de las claves que nos permitan cifrar los ficheros que mantendrán infor-

mación sensible sobre la configuración de Tripwire. Para ello, nos dirigiremos a

la consola y, desde la ruta /etc/tripwire/, ejecutaremos la siguiente secuencia de

comandos como administrador:

# twadmin --generate-keys --site-keyfile ./site.key

(When selecting a passphrase, keep in mind that good passphrases typi-

cally have upper and lower case letters, digits and punctuation marks,

and are at least 8 characters in length.)

Enter the site keyfile passphrase:

Verify the site keyfile passphrase:

Generating key (this may take several minutes)...Key generation complete.

Unidad  didáctica  7  

14

Page 16: PUNTE SEG INF

Sistemas de detección de intrusiones

# twadmin --generate-keys --local-keyfile ./$HOSTNAME-local.key

Enter the local keyfile passphrase:

Verify the local keyfile passphrase:

Generating key (this may take several minutes)...Key generation complete.

# ls

pc.lab.net-local.key site.key twcfg.txt twpol.txt

Como vemos, durante la creación de las claves se solicita-r n sendas contraseñas, siendo una buena práctica el dotar de la fortaleza suficiente a dichas contraseñas, pues en ellas residirá gran parte de la seguridad de HIDS en general.

Una vez generadas las claves, se deberá asegurar debidamente los ficheros de

configuración, para lo cual ahora se ejecutará:

# twadmin --create-cfgfile --cfgfile ./tw.cfg --site-keyfile ./site.key

twcfg.txt

Please enter your site passphrase:

Wrote configuration file: /etc/tripwire/tw.cfg

# twadmin --create-polfile --cfgfile tw.cfg --site-keyfile site.key

twpol.txt

Please enter your site passphrase:

Wrote policy file: /etc/tripwire/tw.pol

# ls

pc.lab.net-local.key site.key tw.cfg twcfg.txt tw.pol twpol.txt

Unidad  didáctica  7  

15

Page 17: PUNTE SEG INF

Tecnologías para la Seguridad

Como se dijo antes, una vez generadas las copias cifradas de los ficheros, de-

bemos eliminar las versiones en texto en claro, o al menos extraerlas del siste-

ma y almacenarlas en un lugar seguro. Finalmente, y de nuevo con el usuario

administrador, sería conveniente limitar el acceso a los ficheros cifrados a través

de los propios permisos del sistema de ficheros. Esto será efectuado a través

del siguiente comando:

# chmod 0600 tw.cfg tw.pol

Tras esto, solo quedará crear e inicializar la base de datos que será empleada inter-

namente por Tripwire para monitorizar la evolución de la integridad de los ficheros

controlados. El primer paso por tanto será crear una línea base o de partida para

las firmas almacenadas en dicha base de datos. Para esta labor se ejecutará el co-

mando que se muestra a continuación, el cual recurrirá a las configuraciones ya

establecidas en el fichero de configuración y en el de políticas, aunque es posible

cambiar dichos valores a través de parámetros en la llamada del comando:

# tripwire -m i –v

Please enter your local passphrase:

Parsing policy file: /etc/tripwire/tw.pol

Generating the database...

Wrote database file: /var/lib/tripwire/pc.lab.net.twd

The database was successfully generated.

A través del parámetro -m i se indica que se desea hacer uso del modo inicialización

de la base de datos, mientras que el parámetro -v permite llevar un control más deta-

llado del proceso. Como se puede ver, se solicita al usuario la introducción de la con-

traseña para acceder a la base de datos, siendo ésta la que se fijó a la hora de crear

las claves empleadas por Tripwire para asegurar los ficheros. Tras esto, se explorarán

todos los ficheros de los que se desea controlar la integridad, creando progresiva-

mente la base de datos en la que almacenar las firmas de los mismos.

Una vez que la base de datos ha sido creada, se almacenará en un fichero bina-

rio de base de datos Tripwire (con extensión .twd), del cual s lo el administra-

dor tendrá permisos de escritura y cifrado con la clave local, de ahí que se soli-

citase la contraseña para el acceso a dicha clave. Para la lectura de la base de

datos se empleará, de nuevo como administrador, el comando twprint.

Unidad  didáctica  7  

16

Page 18: PUNTE SEG INF

Sistemas de detección de intrusiones

2.3.2. CONTROL DE INTEGRIDAD

Este será uno de los principales modos de operación de Tripwire pues en él se

escanean los ficheros del sistema, comprobando su integridad y buscando así

potenciales modificaciones ilícitas de dichos ficheros. Los informes con las

anomalías detectadas se almacenarán en donde se haya prefijado a través de la

variable REPORTFILE en tw.cfg, que por defecto será en el

directorio /var/lib/tripwire/report/.

La forma más básica de realizar estas comprobaciones de integridad será a

través del comando:

# tripwire –m c –v /bin/cp

Opening configuration file: /etc/tripwire/tw.cfg

Checking: /bin/cp

--- Generating information for: /bin/cp

Wrote report file: /var/lib/tripwire/report/pc.lab.net-2008203-025444.twr

Total objects scanned: 1

Total violations found: 0

Cada anomalía encontrada será mostrada por salida estándar además de repor-

tada al mencionado informe.

A través del anterior ejemplo, se ha realizado una com-probación de la integridad del comando “cp” típico de sis-temas GNU/Linux, sin embargo, de no pasarle ningún fi-chero concreto a comprobar, Tripwire chequeará la inte-gridad de todos los ficheros presentes en su base de datos.

Unidad  didáctica  7  

17

Page 19: PUNTE SEG INF

Tecnologías para la Seguridad

Igualmente, se ha asumido que los ficheros de configuración y políticas están en

su ubicación por defecto, pero de no ser así, se podrá indicar la ruta de los

mismos a través de parámetros como --cfgfile. Por último puede verse cómo se

ha hecho uso de la opción –v, que aportará de un mayor detalle a la salida del

comando.

Otra forma habitual de empleo de Tripwire sería realizar una comprobación tan

s lo de los ficheros con un cierto grado de importancia. Por tanto, una vez defi-

nidos los niveles de importancia de cada fichero a través de las políticas, se

podrán ejecutar comprobaciones s lo de los más importantes, a través del co-

mando:

# tripwire –m c –v –l 100

Donde l parámetro –l 100 es el que precisa el nivel de relevancia de los fiche-

ros cuya integridad se desea evaluar. Una vez realizada la comprobación de los

ficheros, podría consultarse el informe obtenido a través del ya mencionado

comando twprint.

Ya comprendida la forma de operación de Tripwire, s lo quedará automatizar la

tarea de monitorización de forma que periódicamente se efectúe las

comprobaciones que se crean convenientes. Para tal fin se recomienda

recurrir a la utilidad “cron”, habitual en la administración de sistemas GNU/

Linux, a través de la cual se establecerán verificaciones con la periodicidad

deseada.

2.3.3. ACTUALIZACIÓN DE LA BASE DE DATOS

Como se ha visto en el punto anterior, Tripwire registrará cualquier variación en

los ficheros predefinidos, poniendo al administrador en alerta ante cualquier

evento en los mismos. Sin embargo, puede ser necesario durante las tareas de

operación con el sistema el modificar de forma intencionada dichos ficheros de

forma legítima. Por tanto, será necesario notificar a Tripwire de semejantes

cambios y que de esta forma no los tome como posibles intrusiones ilícitas.

La forma más eficiente de realizar tal labor es ejecutando Tripwire en modo ac-

tualización de la base de datos. Para ello se procederá con el siguiente coman-

do, pasándole como parámetro el informe más reciente de los obtenidos en las

comprobaciones de integridad:

# tripwire -m u -r /var/lib/tripwire/report/pc.lab.net-2008203-025444.twr

Una vez ejecutado se podrá ver cómo es cargado el editor de textos predefinido

en el fichero de configuración, a través de cual se indicará cuáles de los cam-

bios en ficheros, respecto al último informe, se aprobarán por haberse realizado

Unidad  didáctica  7  

18

Page 20: PUNTE SEG INF

Sistemas de detección de intrusiones

de forma intencionada. Este se efectúa respetando o eliminando los símbolos

de “X” que se muestran en cada uno de los cambios detectados. Así, de dejar la

“X” en la casilla, se informará de que dicho cambio es legítimo y por tanto no se

alertará del mismo en posteriores informes, mientras que si se elimina el símbolo

“X” se estará indicando que el administrador no efectuó dicho cambio, tomán-

dolo como no deseado y por tanto reportado como alerta en un futuro. Tras

revisar todas las modificaciones se solicitará la introducción de la contraseña

para actualizar la base de datos.

2.3.4. ACTUALIZACIÓN DE POLÍTICAS

A medida que se evolucione en la integración de Tripwire con el sistema,

podrían surgir nuevas necesidades en cuanto a las políticas a aplicar en las

comprobaciones efectuadas.

Será necesaria la optimización de estas políticas ajustán-dolas lo más posible a las necesidades concretas de cada máquina.

Por tanto, para tal fin se recurrirá al modo de trabajo de Tripwire de actualiza-

ción de políticas.

El primer paso será la edición de un nuevo fichero de texto en claro en el que se

especificarán las nuevas políticas que se desean incluir o las modificaciones en

las presentes, siguiendo la notación propia de Tripwire para definición de políti-

cas, vista ya en twpol.txt. Una vez realizado esto, se procederá con el siguiente

comando, pasando como parámetro el nombre del fichero recién editado:

# tripwire -m p nueva_politica.txt

Tras lo cual se solicitarán las contraseñas para la debida actualización de la ba-

se de datos y el fichero de políticas, procediendo a la sincronización de las con-

figuraciones antiguas frente a los nuevos parámetros introducidos a través del

fichero de políticas “nueva_politica.txt”.

Unidad  didáctica  7  19

Page 21: PUNTE SEG INF

Sistemas de detección de intrusiones

CONCLUSIONES

En este módulo hemos aprendido cómo emplear los sistemas de detección de

intrusos como elemento de ayuda a la localización de evidencias o trazas de

accesos o actividades no autorizadas en nuestras redes y servidores. Sin duda,

y como se ha podido apreciar, estos elementos son de gran ayuda, considerán-

dose casi imprescindibles en entorno de cierta criticidad.

Si fueses un responsable de seguridad lógica o el administrador de servidores

críticos, ¿qué actividad de red o ficheros del sistema consideras que deberían

estar monitorizados? Seguro que se te ocurre un importante número de datos

que te gustaría tener controlados y que, gracias a las tecnologías expuestas, es

posible realizar.

Unidad  didáctica  7  

20

Page 22: PUNTE SEG INF

Tecnologías para la Seguridad

RECAPITULACIÓN

Veremos una enumeración de todos los conceptos aprendidos en este módulo:

� Importancia de los sistemas de detección de intrusos como dispositivo

de seguridad local y en red.

� Clasificación de los IDS en función de los elementos monitorizados.

� Componentes en los que se podría dividir un IDS

� Empleo de Tripwire como HIDS para controlar la integridad de los ele-

mentos críticos de un sistema.

Unidad  didáctica  7  21

Karim
Karim
Karim
Karim
Karim
Karim
Page 23: PUNTE SEG INF

Sistemas de detección de intrusiones

AUTOCOMPROBACIÓN

1. Si deseamos prevenir posibles ataques de red, ¿qué solución se ade-

cuará más a nuestras necesidades?

a) IDS.

b) IPS.

c) Tanto un IDS como un IPS.

d) Ni un IDS ni un IPS.

2. Según la clasificación básica de los algoritmos que utilizan los IDS,

¿Cuál de ellos minimiza los falsos positivos, pero requiere bastante

tiempo en su desarrollo?

a) Firmas basadas en algoritmos heurísticos.

b) Basados en la coincidencia de los patrones de estado.

c) Basados en patrones/firmas simples.

d) Firmas basadas en decodificación de protocolos.

3. Según la clasificación básica de los algoritmos que utilizan los IDS,

¿Cuál de ellos basados en cálculos estadísticos y trazan líneas base de

comportamiento?

a) Firmas basadas en algoritmos heurísticos.

b) Firmas basadas en decodificación de protocolos.

c) Basados en patrones/firmas simples.

d) Basados en la coincidencia de los patrones de estado.

Unidad  didáctica  7  

22

Karim
Karim
Karim
Page 24: PUNTE SEG INF

Tecnologías para la Seguridad

4. ¿Qué componente lógico dentro de un IDS es el encargado de desen-

samblar y ensamblar los paquetes que pasan por él, analizándolos y

comparándolos con firmas o líneas de comportamiento?

a) Base de datos.

b) Consola.

c) Motor.

d) Aplicación de análisis.

5. ¿Qué componente lógico dentro de un IDS es el encargado de recoger

los datos de la base de datos y realiza análisis estadísticos de varios

parámetros?

a) Consola.

b) Base de datos.

c) Aplicación de análisis.

d) Motor.

6. ¿ ué fichero, dentro de la configuración de Tripwire, se fijan las

ubicaciones de otros ficheros relacionados, así como otras

preferencias a personalizar por el administrador?

a) site.key.

b) twpol.txt.

c) tw.pol.

d) twcfg.txt.

7. ¿Qué fichero, dentro de la configuración de Tripwire, consiste en la

definición de reglas y otras variables necesarias para el correcto fun-

cionamiento de la aplicación?

a) tw.cfg.

b) twpol.txt.

c) site.key.

d) twcfg.txt.

Unidad  didáctica  7  

23

Karim
Karim
Karim
Karim
Page 25: PUNTE SEG INF

Sistemas de detección de intrusiones

8. ¿Qué variable del fichero twcfg.txt contiene la ubicación de la clave

empleada para firmar ficheros comunes a varios sistemas?

a) POLFILE.

b) LOCALKEYFILE.

c) DBFILE.

d) SITEKEYFILE.

9. ¿Cuál de los programas aportados por Tripwire permite la creación y

consulta de ficheros de configuración?

a) Twadmin.

b) Twprint.

c) Tripwire.

d) Siggen.

10. ¿Cuál de los programas aportados por Tripwire permite mostrar los

ficheros de bases de datos en un formato de texto plano legible?

a) Twadmin.

b) Tripwire.

c) Twprint.

d) Siggen.

Unidad  didáctica  7  24

Karim
Karim
Karim
Page 26: PUNTE SEG INF

Sistemas de detección de intrusiones

SOLUCIONARIO

1. b 2. d 3. a 4. c 5. c

6. d 7. b 8. d 9. a 10. c

Unidad  didáctica  7  

25

Page 27: PUNTE SEG INF

Tecnologías para la Seguridad

PROPUESTAS DE AMPLIACIÓN

Como se ha visto, el campo de los sistemas de detección de intrusos ofrece un

gran potencial. A continuación presentaremos algunos puntos en los que se

podría profundizar, y a través de los cuales estamos seguros que se obtendrán

conclusiones y conocimientos muy útiles sobre la seguridad integral de redes y

máquinas:

� Gracias a lo aprendido e este módulo, y los conocimientos de proto-

colos de red ya adquiridos, se recomienda estudiar y probar algún IDS

de red (NIDS). Por ejemplo, Snort (Ver http://www.snort.org/) es un

NIDS ampliamente usado, y de acceso libre, que constituye un buen

ejemplo sobre esta tecnología.

� Los sistemas de prevención de intrusos (IPS) están cobrando cada día

más protagonismo y se están introduciendo como una solución adicio-

nal y complementaria a los propios IDS. Busca por Internet en las pági-

nas de fabricantes (Por ejemplo, Cisco, Juniper, etc.) los productos

ofrecidos por estos. Navega entre los manuales de configuración de es-

tos productos para comprobar las configuraciones que permiten y la

potencia de detección y prevención de los mismos.

� A pesar de que se ha expuesto detenidamente la operativa de trabajo

con Tripwire, se recomienda que se experimente con dicha herramien-

ta. Es de gran interés el realizar la configuración de la misma, definien-

do políticas precisas, y actuar de forma alterna como administrador de

la máquina y como atacante de la misma, para ver un comportamiento

lo más cercano a la realidad del HIDS.

Unidad  didáctica  7  26

Page 28: PUNTE SEG INF

Sistemas de detección de intrusiones

BIBLIOGRAFÍA

� TROST, R. Practical Intrusion Analysis. Addison-Wesley, 2009.

� Sitio Web de Tripwire (http://www.tripwire.com). Recuperado: agosto 2012.

� Sitio Web de Snort (http://www.snort.org/). Recuperado: agosto 2012.

Unidad  didáctica  7  

27