Siguiente: Definiciones Arriba: Sistemas de Detección de Intrusiones Previo: Introducción

1      Historia   5

1.1      Auditorías: el comienzo   6

1.2     Los primeros Sistemas de Detección de Intrusiones  7

1.3     Unión de sistemas de detección basados en máquina y basados en red   9

1.4     Aparición de productos comerciales  10

1.5     Referencias  11

 


Capítulo 1

                 Historia

"Todo tiempo pasado, fue anterior."
Les Luthiers

Cuando la gente oye hablar de Sistemas de Detección de Intrusiones, generalmente los asocia a "alarmas de ladrones para ordenadores o redes". Es fácil entender un concepto como este usando comparaciones sencillas. En realidad, la explicación es bastante aproximada, y los usuarios que no se dedican a la seguridad no necesitan saber más. Sin embargo, los expertos en seguridad no pueden cometer el error de conformarse con algo tan trivial, sin tener conocimiento alguno sobre la historia de estos sistemas.

La detección de intrusiones es el fruto de la aplicación del Procesamiento Electrónico de Datos (EDP) a las auditorías de seguridad, utilizando mecanismos de identificación de patrones y métodos estadísticos. Es una parte imprescindible en las modernas tecnologías de seguridad de redes.

Antes de la detección de intrusiones existían las auditorías de seguridad. La auditoría es el proceso de generar, almacenar y revisar eventos de un sistema cronológicamente.

                La Figura 1‑1 muestra un esquema simple del funcionamiento de un sistema de auditorías. Los eventos de sistema son capturados por los generadores de auditorías, que llevan los datos al elemento encargado de guardarlos en un fichero de "logs". El analizador, en base a unas políticas de seguridad, emite los resultados a través de un terminal.

 

Figura 1‑1 - Sistema de Auditorías Básico

 

                Durante los comienzos de la historia de los ordenadores, estas máquinas eran relativamente escasas y muy caras. Su uso estaba restringido a técnicos e ingenieros especializados. Los primeros sistemas de auditorías tenían como propósito medir el tiempo que dedicaban los operadores a usar los sistemas que monitorizaban, con una precisión de milésimas de segundo, y servían entre otras cosas para poder facturarles el mismo.

1.1           Auditorías: el comienzo

A mediados de los años 50 la empresa "Bell Telephone System", de Estados Unidos, creó un grupo de desarrollo con el objetivo de analizar el uso de los ordenadores en el futuro en el negocio de las empresas de telefonía. Este equipo estableció la necesidad de utilizar auditorías mediante el Procesamiento Electrónico de Datos (EDP), rompiendo con el anterior sistema basado en los tradicionales informes de papel. Esto hizo que a finales de los 50 la "Bell Telephone System" se embarcara en el primer sistema a gran escala de facturación telefónica controlada por ordenadores. [1]

El Departamento de Defensa de EEUU empleó numerosos recursos en los años 70 para la investigación de políticas de seguridad, directrices y pautas de control de lo que denominaban "sistemas de confianza". Estos esfuerzos culminaron con la Iniciativa de Seguridad de 1977.

Los Sistemas de Confianza son aquellos "sistemas que emplean los suficientes recursos hardware y software para permitir el procesamiento simultáneo de una variedad de información confidencial o clasificada". [2]

En estos sistemas se albergaban distintos tipos de información repartida en niveles, que correspondían a su grado de confidencialidad.

En un principio, los desarrolladores no tenían claro si las auditorías jugaban un papel importante en la seguridad de un sistema de confianza. Más tarde, se terminó incluyendo un apartado sobre los mecanismos de las auditorías en el "Trusted Computer System Evaluation Criteria" o TSCSEC [3] (Libro Naranja), como un requisito para cualquier sistema de confianza de clase C2 o superior. La serie de documentos del Departamento de Defensa de EEUU sobre Sistemas de Confianza se conoce como la "serie Arco Iris" ("Rainbow series") debido a los colores de las tapas de los libros que publicaban.

El documento que trata el tema de las auditorías está incluido en el "Libro Marrón" titulado "A Guide to Understanding Audit in Trusted Systems" [4]. En este libro se enumeran los cinco objetivos de un mecanismo de auditoría:

·         Permitir la revisión de patrones de acceso (por parte de un objeto o por parte de un usuario) y el uso de mecanismos de protección del sistema.

·         Permitir el descubrimiento tanto de intentos internos como externos de burlar los mecanismos de protección.

·         Permitir el descubrimiento de la transición de usuario cuando pasa de un menor nivel de privilegios a otro mayor (elevación de privilegios).

·         Permitir el bloqueo de los intentos de los usuarios por saltarse los mecanismos de protección del sistema.

·         Servir además como una garantía frente a los usuarios de que toda la información que se recoja sobre ataques e intrusiones será suficiente para controlar los posibles daños ocasionados en el sistema.

1.2          Los primeros Sistemas de Detección de Intrusiones

A medida que el número de ordenadores crecía, el número de eventos de sistema a analizar era tal que esta tarea se volvía humanamente imposible. Las autoridades militares de norteamericanas se dieron cuenta de que el uso cada vez más masivo de ordenadores en sus instalaciones requería algún mecanismo que facilitara la labor de los auditores.

James P. Anderson fue la primera persona capaz de documentar la necesidad de un mecanismo que automatizara la revisión de los eventos de seguridad. Describió el concepto de "Monitor de Referencias" en un estudio encargado por las Fuerzas Aéreas de EEUU, y redactó un informe en 1980 que sería el primero de los futuros trabajos sobre detección de intrusiones. Uno de los objetivos de este informe era la eliminación de información redundante o irrelevante en los registros de sucesos (1). [5]

Anderson propuso un sistema de clasificación que distinguía entre ataques internos y externos, basado en si los usuarios tenían permiso de acceso o no al ordenador. Estos eran los principales objetivos de los mecanismos de auditoría de seguridad:

·         Debían proporcionar suficiente información para que los encargados de seguridad localizaran el problema, pero no para efectuar un ataque.

·         Debía ser capaz de obtener datos de distintos recursos de sistema.

·         Para evitar ataques internos, debía detectar usos indebidos ("misuse") o fuera de lo normal por parte de los usuarios (o recursos).

·         El diseño del mecanismo de auditoría debía ser capaz de obtener la estrategia usada por el atacante para entrar en las cuentas.

Ideó un sistema para dar solución al problema de los intrusos que se habían apoderado de cuentas de usuario legítimas. El cual debía distinguir entre el comportamiento normal o inusual de las cuentas basándose en patrones de uso, creados a partir del análisis de estadísticas de comportamiento de usuario. Los sistemas posteriores trabajarían esta idea. [6]

El "Instrusion Detection Expert System" (IDES), desarrollado entre 1984 y 1986 por Dorothy Denning y Peter Neumann, fue un modelo que definía un sistema de detección de intrusiones en tiempo real [7]. Este proyecto, fundado entre otros por la Marina estadounidense proponía una correspondencia entre actividad anómala y abuso, o uso indebido. Entendiendo por anómala, aquella actividad rara o inusual en un contexto estadístico. Usaba perfiles para describir a los sujetos del sistema (principalmente usuarios), y reglas de actividad para definir las acciones que tenían lugar (eventos de sistema o tiempos de CPU). Estos elementos permitían establecer mediante métodos estadísticos las pautas de comportamiento necesarias para detectar posibles anomalías. IDES era un sistema híbrido porque añadía un nivel de seguridad adicional mediante el uso de un sistema experto, basado en reglas de seguridad, que minimizaba los efectos de un intruso que intentara eludir el detector de anomalías.

Este modelo fue usado para el prototipo del sistema IDES por "SRI International", en el que trabajaron Teresa Lunt, R Jagganathan, Peter Neumann, Harold Javitz, y Fred Gilham. [8]

En los años ochenta aparecieron numerosos sistemas de detección de intrusiones. Desde 1984 hasta 1985 un grupo de desarrollo en Sytek dirigió un proyecto denominado "Automated Audit Analysis". Utilizaba información recogida a nivel de interfaz de comandos ("shell") de un sistema UNIX, para posteriormente compararlos con una base de datos. Estos datos se analizaban estadísticamente para demostrar que se podían detectar comportamientos fuera de lo normal. Algunos investigadores del proyecto trabajaron más tarde en "SRI International".

                Discovery fue un sistema creado para detectar e impedir problemas en la base de datos de TRW. La novedad de Discovery radicaba en que monitorizaba una aplicación, no un sistema operativo. Utilizaba métodos estadísticos escritos en COBOL para detectar los posibles abusos. Su creador fue William Tener. [9]

                El proyecto Haystack, del Centro de Soporte Criptológico las Fuerzas Aéreas de EEUU fue usado para ayudar a los oficiales a encontrar signos de ataques internos en los ordenadores principales de sus bases. Estas máquinas eran principalmente "mainframes" (servidores corporativos) que manejaban información no clasificada pero confidencial. El sistema estaba escrito en C ANSI y SQL. Examinaba los datos de forma periódica, recogiendo colas de eventos de forma periódica. Utilizaba dos fases de análisis para detectar las posibles anomalías. El principal responsable del proyecto fue Steve Smaha.[10]

                Otro proyecto importante fue el "Multics Intrusion Detection and Alerting System" (MIDAS), creado por el National Computer Security Center (NCSC). Se utilizó para monitorizar el sistema NCSC's Dockmaster, un Honeywall DPS 8/70 en el que corría uno de los sistemas operativos más seguros de entonces, un Multics. Al igual que IDES, MIDAS utilizaba un sistema híbrido en el que combinaba tanto la estadística de anomalías como reglas de seguridad de un sistema experto.

                MIDAS usaba un proceso de análisis progresivo compuesto por cuatro niveles de reglas. Además de estas reglas, también contaba con una base de datos que usaba para determinar signos de comportamiento atípico. Fue uno de los primeros sistemas de detección de intrusiones conectados a Internet. Fue publicado en la red en 1989 y monitorizó el Mainframe Dockmaster en 1990. Contribuyó a fortalecer los mecanismos de autenticación de usuarios. Además, no sólo había contribuido a mejorar la seguridad contra ataques externos, sino que también seguía bloqueando intrusiones internas. [11]

                "Network Audit Director and Intrusion Reporter" (NADIR) fue desarrollado en Laboratorio Nacional de Los Alamos, para monitorizar el "Integrated Computing Network" (ICN). Esta red estaba inicialmente compuesta por unos 9.000 usuarios. NADIR usaba técnicas de detección similares a los sistemas de su tiempo como el IDES o MIDAS. Fue uno de los sistemas con más éxito de los años ochenta. La principal responsable de NADIR fue Kathleen Jackson.

                El "Network System Monitor" (NSM) fue desarrollado en la Universidad de California para trabajar en una estación UNIX de Sun. Fue el primer sistema de detección de intrusiones que monitorizaba el tráfico de red, utilizando los datos del propio tráfico como principal fuente de datos. Los anteriores sistemas utilizaban los eventos de sistema o registraban las pulsaciones de teclado. El funcionamiento del NSM, que muchos sistemas de detección de intrusiones de red utilizan hoy en día, se puede describir en estos pasos:

Una de las pruebas que se hicieron con el NSM duró dos meses. Monitorizó más de 111.000 conexiones, y detectó correctamente más de 300 posibles intrusiones. Como dato significativo, y para enfatizar la necesidad del uso de este tipo de sistemas, hay que señalar que los administradores no llegaron a percibir ni el 1% de dichas intrusiones.

                Los principales responsables del NSM fueron Karl Levitt, Todd Heberlein, y Biswanath Mukherjee de la Universidad de California. [12]

                El sistema "Wisdom and Sense" fue un detector de anomalías creado en el Laboratorio Nacional de Los Alamos en cooperación con el Laboratorio Nacional de Oak Ridge. Utilizaba técnicas no paramétricas ("nonparametric techniques"), que eran técnicas estadísticas que no hacían suposiciones sobre la distribución de los datos. Usaban este método para crear su propio conjunto de reglas. Luego analizaba los "logs" de las auditorías en busca de excepciones de esas reglas, las cuales estaban organizadas en "arrays" con forma de árbol. Definían lo que era el comportamiento normal desde un punto de vista cronológico de los datos de auditoría. [13]

1.3          Unión de sistemas de detección basados en máquina y basados en red

                Como hemos visto, durante los comienzos de la detección de intrusiones, la mayoría de los sistemas estaban pensados para monitorizar "hosts" (máquinas). Salvo algunas excepciones como el mencionado NSM, que empezó a utilizar el tráfico de red como objetivo de vigilancia.

                A partir de los años 90, el rápido crecimiento de las redes de ordenadores hizo que surgieran nuevos modelos de detección de intrusiones. Los daños provocados por el famoso gusano de Internet en 1988, ayudaron a que unieran esfuerzos las actividades comerciales y académicas en busca de soluciones de seguridad en este campo [14]. El primer paso para la fusión de sistemas de detección basados en máquina y red fue el "Distributed Intrusion Detection System" (DIDS).

                El DIDS fue fruto del esfuerzo y la colaboración de grandes entidades como el Centro de Soporte Criptológico de las Fuerzas Aéreas de EEUU, El Laboratorio Nacional de Lawrence Livermore, la Universidad de California y los Laboratorios Haystack. Fue el primer sistema capaz de hacer que un grupo de seguridad pudiera monitorizar las violaciones e intrusiones de seguridad a través de las redes. El principal responsable de este proyecto fue Steve Smaha. [15]

                El objetivo inicial del DIDS era proporcionar medios que permitieran centralizar el control y publicación de resultados en un controlador central.

Figura 1‑2 - Sistema de Detección de Intrusiones Distribuido (DIDS)

                El DIDS afrontó diversos problemas. Los más importantes estaban relacionados con el hecho de tener que registrar eventos asociados a distintas máquinas a lo largo de la red. Un atacante suele aprovecharse de las redes para distribuir sus ataques, realizando éstos desde distintas máquinas. El DIDS fue el primer sistema capaz de relacionar los eventos que recibía para poder detectar una posible intrusión. Además, reunía la información de forma que era posible hacer un seguimiento del posible intruso. Esto permitía su uso para poder ser identificado y perseguido por la ley.

                Para solventar el problema de relacionar los eventos que tenían lugar en los distintos niveles de abstracción de la red, el DIDS utilizaba un modelo de detección de intrusiones estratificado en seis niveles que distinguían los distintos tipos de datos.

1.4          Aparición de productos comerciales

                Alrededor de 1990, tuvo lugar la aparición de los primeros programas de detección de intrusiones para uso comercial. Algunas empresas los desarrollaban para ocupar una posición destacada en el ámbito de la seguridad, y otras para mejorar los niveles exigidos por la NCSC.

                Entre los productos más famosos de aquella época cabe mencionar el "Computer Watch" desarrollado por la empresa AT&T, el "Information Security Officer's Assistant" (ISOA) de PRC y el "Clyde VAX Audit" por Clyde Digital (luego RAXCO, y más tarde Axent).

1.5          Referencias

    [1]       Wasserman, Joseph J. The Vanishing Trail. Bell Telephone Magazine 47, no. 4, July - August 1968: 12 - 15.

   [2]       National Computer Security Center. Glossay of Computer Security Terms. Versión 1, Rainbow Series, octubre 1988.

   [3]       National Computer Security Center. Department of Defense Trusted Computer System Evaluation Criteria. Orange Book, DOD 5200.28-std, December 1985.

   [4]       National Computer Security Center. A Guide to Understanding audit in Trusted Systems. Versión 2, June 1988.

    [5]       Anderson, James, P. Computer Security Technology Planning Study. ESD-TR-73-51, v II. Electronic Systems Division, Air Force Systems Command, Hanscom Filed, Bedford, MA, octubre 1972.

   [6]       Anderson, James P. Computer Security Threat Monitoring and Surveillance. Fort Washington, PA: James P. Anderson Co., 1980.

   [7]       Denning, Dorothy E. An Intrusion Detection Model. Proceedings of the 1986 IEEE Symposium on Security and Privacy, Oakland, CA, April 1986.

   [8]       SRI International. System Design Laboratory Laboratory - Intrusion Detection. [en línea]. Fecha no disponible [consultado en enero, 2003]. Next-Generation IDES (NIDES). Disponible desde Internet <http://www.sdl.sri.com/programs/intrusion/history.html>.

   [9]       Tener, William T. Discovery: An Expert System in the Commercial Data Security Environment. Proceedings of the IFIP Security Conference, Monte Carlo, 1986.

[10]       Smaha Steve E. An Intrusion Detection System for the Air Force. Proceedings of the Fourth Aurospace Computer Security Applications Conference, Orlando, FL, December 1988.

[11]       Sebring, Michael M., E. Shellhouse, M. E. Hanna, and R. A. Whitehurst. Expert Systems in Intrusion Detection: A Case Study. Proceedings of the Eleventh National Computer Security Conference, Washington, DC, October 1988.

[12]       Heberlein, Todd. Network Security Monitor (NSM) - Final Report. Lawrence Livermore National Laboratory, Davis, CA, February 1995.

[13]       Vaccaro, Henry S. and G. E. Liepins. Detection of Anomalous Computer Session Activity. Proceedings of the 1989 IEEE Symposium on Security and Privacy, Oakland, CA, May 1989.

[14]       Spafford, Eugene H. The Internet Worm: Crisis and Aftermath; Communications of the ACM; 32(6): 678 - 687, June 1989.

[15]       Snapp, S.R. et al. DIDS (Distributed Intrusion Detection System) – Motivation, Architecture, and An Early Prototype. Proceedings of the Fifteenthe National Computer Security Conference, Baltimore, MD, October 1992.

 


(1) Este método es conocido en inglés como "audit reduction".

 


Siguiente: Definiciones Arriba: Sistemas de Detección de Intrusiones Previo: Introducción

Sistemas de Detección de Intrusiones, versión 1.01. Julio, 2003.
Diego González Gómez