Sei sulla pagina 1di 15

Universidad de los Andes. Crdoba, Laverde, Ortiz, Puentes.

Los IDS y los IPS: Una comparacin prctica

Los IDS y los IPS: Una comparacin prctica


Crdoba Jonathan, Laverde Ricardo, Ortiz Diego, Puentes Diana. {jcordoba ,n-laverd ,d-ortiz, d-puente}@uniandes.edu.co

ResumenEste artculo presenta una introduccin a los Sistemas de Deteccin y Prevencin de Intrusos (IDS e IPS respectivamente) mostrando principales caractersticas, clasificacin y diferencias. Para contrastar ambos sistemas se realiza un ejercicio prctico que muestra y analiza diferencias de comportamiento ante el mismo estmulo (ataque). ndice de Trminos IDS, IPS, Deteccin de Intrusos, Prevencin de Intrusos, Snort. I. INTRODUCCIN. Debido al carcter interdependiente entre la informacin y la tecnologa en las organizaciones actuales y la criticidad de la fidelidad, integridad, disponibilidad y confidencialidad de la informacin, han surgido y evolucionado tcnicas que permiten acceder a dicha informacin de manera ilegtima por medio de la explotacin de vulnerabilidades o debilidades de las plataformas tecnolgicas. En respuesta a lo anterior nacieron y se han desarrollado arquitecturas, tcnicas y sistemas (en particular los IDS y los IPS) en pos de detectar y prevenir el acceso indebido a la informacin organizacional, asegurando de este modo los atributos de la informacin recin mencionados. Histricamente los IDS surgen antes que los IPS, con la funcin principal de detectar situaciones anmalas y usos indebidos de los recursos y servicios de la infraestructura tecnolgica. Como consecuencia de la dificultad para reaccionar
Este documento fue realizado en el contexto del curso Introduccin a la Informtica Forense, bajo la supervisin del Profesor Jeimy J. Cano, Ph.D FCE.

oportunamente a las alertas de intrusin generadas por los IDS, nacen los IPS que se encargan de reaccionar proactivamente a las intrusiones detectadas por el IDS tan pronto se identifican. Con el fin de caracterizar las diferencias entre los IDS y los IPS, este artculo los compara desde una perspectiva terica y prctica en un ambiente controlado de pruebas.

II. IDS: SISTEMAS DE DETECCIN DE INTRUSOS (INTRUSION DETECTION SYSTEMS). A. Definicin. La deteccin de intrusos consiste en un conjunto de mtodos y tcnicas para revelar actividad sospechosa sobre un recurso o conjunto de recursos computacionales. Es decir, eventos que sugieran comportamientos anmalos, incorrectos o inapropiados sobre un sistema [1]; entendido como el ente que est siendo monitoreado (v.gr. Estacin de trabajo, dispositivos de red, servidores, firewalls, etc.). B. Descripcin. Un IDS puede ser descrito como un detector que procesa la informacin proveniente del sistema monitoreado. Es una herramienta de apoyo en procesos de auditoria, entendida como el control del funcionamiento de un sistema a travs del anlisis de su comportamiento interno [02] como se ilustra en la Figura 1. Para detectar intrusiones en un sistema, los IDS utilizan tres tipos de informacin: la recopilada tiempo atrs que tiene datos de ataques previos, la configuracin actual del sistema y finalmente la descripcin del estado actual en trminos de comunicacin y procesos. [02]

Introduccin a la Informtica Forense. 2005-I

Universidad de los Andes. Crdoba, Laverde, Ortiz, Puentes. Los IDS y los IPS: Una comparacin prctica Figura 1
UN SISTEMA DE DETECCIN DE INTRUSOS SIMPLIFICADO. [02]

criterios de bondad la interoperabilidad (capacidad que tiene el IDS para comunicarse y operar con otros IDS) y la facilidad de uso (el nivel de claridad que ofrece el IDS a los usuarios para su administracin y anlisis de alarmas). Adicionalmente existen los siguientes indicadores estadsticos que permiten cuantificar la bondad del IDS como se muestra en la Figura 2.
Figura 2
CUANTIFICACIN ESTADSTICA DE LOS IDS. [15]

Nota: El calibre de la flecha representa la cantidad de informacin que fluye desde un componente hasta el otro

C. Criterios de evaluacin de los IDS. Existen varios criterios para definir la bondad de un IDS. Segn [03] hay tres criterios para evaluar este tipo de sistemas: la precisin, el rendimiento y la completitud. La precisin tiene que ver con la efectividad de la deteccin y la ausencia de falsas alarmas. Por otra parte, el rendimiento de un IDS es la tasa de eventos procesados por unidad de tiempo, siendo lo ideal que el IDS reconozca los ataques en tiempo real. Finalmente, la completitud es la capacidad del IDS para detectar la mayor cantidad de ataques posibles. Aparte de los anteriores, [02] menciona otros dos criterios: tolerancia a fallas y rapidez. El IDS es tolerante a fallas si es inmune a ataques que comprometan la fiabilidad e integridad de los anlisis y es rpido si tiene la capacidad de informar en el menor tiempo posible una intrusin, lo cual implica realizar todas las actividades de anlisis precedentes en tiempo real. Por su parte, Axelsson en [04] reconoce como

Tales indicadores (sensibilidad, especificidad y precisin) se basan en los siguientes conceptos: Verdaderos positivos (TP): Intrusin existente y correctamente detectada. Falsos positivos (FP): Intrusin no existente e incorrectamente detectada. Falsos negativos (FN): Intrusin existente y no detectada. Verdaderos negativos (TN): existente y no detectada. Intrusin no

A partir de los anteriores conceptos, los indicadores se definen como: Sensibilidad=(#TP/(#TP+#FN)), Mide la efectividad de las detecciones cuando existe alguna intrusin

Especificidad=(#TN/(#TN+#FP)) Mide la efectividad de las detecciones cuando no existe intrusin

Introduccin a la Informtica Forense. 2005-I

Universidad de los Andes. Crdoba, Laverde, Ortiz, Puentes. Los IDS y los IPS: Una comparacin prctica

del sistema. Precisin=(#TP+#TN)/( #TP+#TN+#FP+#FN) Mide la efectividad de las detecciones cuando existe o no existe intrusin. Analistas estadsticos: Recolectan informacin estadstica descriptiva a partir de la cual crean vectores de distancia entre el comportamiento normal y anormal. Por otro lado, en los Sistemas de deteccin programada no es el sistema el que aprende sino que existe un ente externo que programa lo que es considerado anormal. Existen dos representantes de este tipo de sistemas [04]: Analistas estadsticos: Construyen perfiles estadsticos de comportamiento de las anormalidades, a partir de parmetros obtenidos del ejercicio estadstico. Denegacin por defecto: Se fijan explcitamente las circunstancias en las cuales el sistema opera en forma normal o aceptable, identificando como situacin anormal las desviaciones a tales circunstancias. En ltimo lugar se tiene la Deteccin por Firma (deteccin por regla) que se basa en la asociacin de la actividad en el sistema con un patrn previamente definido en forma de reglas [04]. En primer lugar se tiene la Deteccin de Anomalas que consiste en analizar la informacin del sistema monitoreado en busca de cualquier anormalidad, es decir una seal caracterstica de ataque. Para determinar la normalidad o anormalidad en el comportamiento en un sistema (fase de entrenamiento), existen dos aproximaciones: los Sistemas de autoaprendizaje y los Sistemas de deteccin programada. Los Sistemas de autoaprendizaje funcionan generando modelos de lo que se constituye normal a partir de la de la observacin del comportamiento del sistema por largos perodos de tiempo. stos a su vez se dividen en [04]: Modeladores de reglas: Auto-generan reglas que definen la normalidad en el comportamiento
Introduccin a la Informtica Forense. 2005-I

D. Taxonoma La clasificacin de los IDS puede guiarse la metodologa empleada (firmas o anomalas) por las caractersticas inherentes al sistema, como se detalla a continuacin.
1) Clasificacin por la metodologa empleada (ver figura 3) [04]-[07]. Figura 3
CLASIFICACIN DE PRINCIPIOS DE DETECCIN. [03]

Los sistemas basados en deteccin de anomalas se caracterizan por su buen desempeo a la hora de detectar nuevos tipos de intrusiones, ya que stas usualmente difieren de los patrones normales de comportamiento del sistema. Sin embargo estos sistemas presentan dificultades para adaptarse a nuevos comportamientos normales, ya que la nica forma de hacerlo es reiniciando el IDS en fase de entrenamiento. Adicionalmente, vale la pena notar que la fase de entrenamiento debe cubrir la totalidad de los eventos aceptables posibles en el sistema, de tal manera que se reconozcan como normales y consecuentemente se reduzca la cantidad de falsos positivos. Es importante tener en cuenta que el costo en tiempo y recursos de esta fase es alto

Universidad de los Andes. Crdoba, Laverde, Ortiz, Puentes. Los IDS y los IPS: Una comparacin prctica

excepto en el caso de la denegacin por defecto. Por otro lado, los sistemas basados en reglas se caracterizan por su facilidad de adaptacin al entorno cambiante ya que basta definir la regla escribindola u obtenindola de un tercero. Empero, los sistemas basados en reglas son potencialmente vulnerables a ser comprometidos por medio del uso de nuevas tcticas, para las cuales no se han definido las reglas correspondientes o todava no es posible crear la regla debido al desconocimiento del funcionamiento del ataque. La divisin por ubicacin de la fuente auditada discrimina el tipo de informacin que es analizada y el punto fsico en el que se realiza la auditoria de datos. Existen cuatro tipos de IDS segn esta clasificacin [02]: Los IDS basados en el host (HIDS) solo procesan informacin de las actividades de los usuarios y servicios en una mquina determinada, por ejemplo la creacin de archivos, los llamados al sistema operativo y los llamados a las interfaces de red. Los IDS basados en la red (NIDS) hacen sniffing sobre algn punto de la red y analizan el trfico capturado en busca de intrusiones. En caso que el NIDS se encuentre distribuido (DIDS) disponiendo de varios puntos de recoleccin y anlisis de datos (sensores) usualmente se consolida un banco de datos centralizado que contiene la informacin procesada por los diferentes sensores. Finalmente, los IDS basados en logs procesan los archivos de log en bsqueda de informacin relacionada con eventos de intrusin, este tipo de deteccin se caracteriza por su completitud y precisin. Para terminar, la divisin por paradigma de deteccin se refiere al mecanismo de deteccin de intrusos [02]: Los basados en estado reconocen situaciones peligrosas, cuando estas ya han ocurrido, mientras que los basados en transiciones estn en capacidad de reconocer actividades sospechosas que son potencialmente parte de una intrusin. E. Snort Snort es uno de los NIDS basados en firmas ms populares. Inicialmente fue desarrollado por Martin Roesch quien los bautiz basado en su rol como sniffer and more [07]. Actualmente Snort es software de cdigo abierto por SourceFire [16].

2) Clasificacin por caractersticas intrnsecas del sistema


(ver figura 4) [02] [07].

Figura 4
CLASIFICACIN POR CARACTERISTICAS INTRINSECAS. [02]

Existen tres parmetros de clasificacin a partir de las caractersticas intrnsecas del sistema: mtodo de deteccin, ubicacin de la fuente auditada, y paradigma de deteccin. La divisin por mtodo de deteccin se basa en las caractersticas de funcionamiento del IDS. Las Basadas en Comportamiento comparan contra comportamientos normales; mientras que las Basadas en Conocimiento crean patrones que identifican los ataques e intrusiones.

Introduccin a la Informtica Forense. 2005-I

Universidad de los Andes. Crdoba, Laverde, Ortiz, Puentes. Los IDS y los IPS: Una comparacin prctica

notificarle a la polica [11]. III. IPS: SISTEMAS DE PREVENCIN DE INTRUSOS (INTRUSION PREVENTION SYSTEMS) A. Definicin y caractersticas generales de los IPS. Los IPS son dispositivos de hardware o software encargados de revisar el trfico de red con el propsito de detectar y responder a posibles ataques o intrusiones. La respuesta usualmente consiste en descartar los paquetes involucrados en el ataque o modificarlos (scrubbing) de tal manera que se anule su propsito. Es claro que este comportamiento los clasifica como dispositivos proactivos debido a su reaccin automtica a situaciones anmalas [07]. De alguna manera el comportamiento de los IPS semeja el comportamiento de los firewall ya que ambos toman decisiones con respecto a la aceptacin de un paquete en un sistema. Sin embargo, la diferencia radica en el hecho que los firewall basan sus decisiones en los encabezados del paquete entrante, en particular los de las capas de red y de transporte, mientras que los IPS basan sus decisiones tanto en los encabezados como en el contenido de datos (payload) del paquete [11]. B. Los IPS como evolucin de los IDS. Para varios autores los sistemas de prevencin de intrusos son la evolucin de los sistemas de deteccin de intrusos [07]-[11]-[08], particularmente, se clama que los primeros ofrecen un manejo ms efectivo de las intrusiones al tiempo que superan las dificultades inherentes de los IDS, en particular, la permisividad de los IDS ante las intrusiones. El IDS se limita a detectar y notificar la intrusin a la persona encargada de recibir y responder las alertas (por ejemplo: el administrador de la red o el operador del IDS) quien debe tomar la accin correctiva pertinente, lo que es anlogo a darse cuenta de un robo en un banco y limitarse a
Introduccin a la Informtica Forense. 2005-I

Por su parte, una vez el IPS detecta la intrusin la detiene de algn modo. En el caso de la analoga del robo, el IPS representa un guardia armado que reacciona de forma instintiva al ataque. Vale la pena mencionar que el nivel de alertas de un IPS es considerablemente menor que el nivel de alertas producido por un IDS, puesto que el IPS se encarga de manejar la situacin y slo genera alertas si se le configura explcitamente para tal fin o en caso que la criticidad de los eventos y circunstancias lo amerite. Es importante tener en cuenta que entre los IDS y los IPS hay una categora especial de IDS que se denominan IDS con respuesta activa, que cumplen la funcin de detener las intrusiones descartando los paquetes relacionados con el ataque. Segn [07], la diferencia principal entre los IDS con respuesta activa y los IPS es que estos ltimos estn en capacidad de inutilizar los paquetes involucrados en el ataque modificando su contenido, pero tal distincin parece no estar muy difundida y la mayora de la bibliografa cataloga los IDS con respuesta activa como un tipo particular de IPS. La propiedad inherente a los IPS de reaccionar automticamente a las intrusiones (o lo que ellos determinan como tales) ciertamente disminuye significativamente el tiempo de reaccin al ataque, pero tambin puede desencadenar eventos inesperados e inconvenientes cuando se reacciona ante un falso positivo (FP). Lo anterior indica que es indispensable la disminucin de este tipo de caracterizaciones para que el IPS sea ms preciso. [07] Las consecuencias de la intervencin inoportuna e inesperada del IPS en caso de un falso positivo pueden ir desde la negacin del servicio a los clientes hasta el aislamiento total de la mquina. En [07], se comenta el caso de un IPS que errneamente determin que el servidor DNS de la

Universidad de los Andes. Crdoba, Laverde, Ortiz, Puentes. Los IDS y los IPS: Una comparacin prctica

empresa estaba haciendo un scan de puertos de la red y tom la decisin de bloquear todo acceso a ste, produciendo un colapso en los aplicativos de red en la organizacin. Por otro lado, las arquitecturas actuales para los IPS centralizan su funcionamiento en un solo punto lo que facilita su operacin y administracin, sin embargo, la centralizacin disminuye la escalabilidad del sistema y convierte al IPS en un punto crtico, cuyo mal funcionamiento impacta negativamente a nivel de uso y de desempeo en la red sobre la que opera. [07]-[10] Finalmente, es importante notar que los IPS no son la bala de plata que hace desaparecer los problemas de seguridad, ni soluciona las falencias de los IDS, por ejemplo, los IPS no estn en capacidad de detectar y mucho menos detener intrusiones sobre comunicaciones cifradas o detener intrusiones que ni siquiera son capaces de detectar. De lo anterior se deduce que los IPS son un elemento en la arquitectura de seguridad y no se les puede considerar como una arquitectura per se. Es por esto que se recomienda adoptar un esquema de seguridad por capas o una estrategia de defense in depth [11], cuya discusin sobrepasa los lmites de este escrito. C. La evolucin y las categoras de los IPS. [10] Es posible distinguir dos generaciones histricas de los IPS: los primeros, al detectar un ataque proveniente de una direccin IP determinada, descartaban todos los paquetes provenientes de dicha direccin -estuvieran o no relacionados con el ataque- (IPS de primera generacin). Posteriormente se refin la anterior estrategia de tal manera que el IPS descartara nicamente los paquetes relacionados con el ataque identificado, permitiendo el trfico de otros paquetes provenientes de la IP del atacante siempre y cuando no estuvieran relacionados con el ataque (IPS de segunda generacin). [11]

Por otro lado, es posible distinguir cinco categoras de IPS dependiendo de su funcionamiento, sus capacidades y su ubicacin en la arquitectura de la red, tales categoras se describen a continuacin [10]:
1) Los IPS inline. Figura 5
LOS IPS INLINE. [10]

Este tipo de IPS usualmente se despliega en algn punto de la red como un bridge de nivel dos de tal manera que media entre los sistemas que protege y el resto de la red, como se muestra en la Figura 5. En adicin a la funcionalidad tpica de un bridge, el IPS inline revisa todos los paquetes en busca de la firma que define alguno de los ataques que est configurado para identificar. En caso que el paquete este limpio, el IPS le permite el paso (como un bridge normal), en caso contrario lo descarta registrndolo en un log. El IPS inline puede incluso permitir el paso de un paquete sospechoso modificando su contenido, de tal manera que el propsito del ataque se frustre sin que el atacante sepa que sus paquetes estn siendo modificados. Existen implementaciones de los IPS inline ms elaboradas que pueden llegar a realizar consultas DNS reversas y traceroutes sobre la identidad del atacante, consignando los resultados obtenidos en un log de tal manera que se obtenga automticamente informacin adicional sobre el autor del ataque. [07]

Introduccin a la Informtica Forense. 2005-I

Universidad de los Andes. Crdoba, Laverde, Ortiz, Puentes. Los IDS y los IPS: Una comparacin prctica

Es importante tener en cuenta que los IPS inline son una evolucin de los NIDS, en particular, de los NIDS basados en reglas (firmas). Debido a lo anterior, los IPS inline heredan las mismas limitaciones de stos, mencionadas en la primera parte de este artculo.
2) Switches de nivel de Aplicacin.[12] Figura 6
LOS SWITCHES DE NIVEL DE APLICACIN. [10]

eficiente en caso que su contenido concuerde con alguna firma preestablecida en el IPS. Debido a lo anterior los switches de aplicacin son los ms efectivos (aunque usualmente costosos) a la hora de prevenir intrusiones, particularmente de negacin del servicio.
3) Firewalls de aplicacin / IDS. Figura 7
LOS FIREWALL DE APLICACIN / IDS. [10]

ltimamente ha aumentado la tendencia a utilizar switches en la capa de aplicacin, que funcionan de forma independiente a otros dispositivos de red y en su propio hardware optimizado para manejar grandes volmenes de trfico (entre uno y varios Gigabits). La tarea principal de los switches de nivel siete (tambin conocidos como switches de contenido) es balancear las cargas de las aplicaciones distribuidas entre varios servidores, tomando decisiones de enrutamiento o conmutacin a partir del payload de informacin de nivel siete como se ve en la Figura 6. El modus operandi recin descrito se adapta de forma precisa a lo que se espera del IPS, ya que revisa el contenido de datos del paquete y es posible configurarlo para que lo analice y descarte de forma
Introduccin a la Informtica Forense. 2005-I

A diferencia de los enfoques precedentes, los firewall de aplicacin/IDS no funcionan al nivel de paquete. stos se instalan en cada host que se desea proteger adaptndose ntimamente con las aplicaciones que corren en el host que protegen. Para lograr lo anterior es necesario que antes de comenzar la fase de proteccin se ejecuten en modalidad de entrenamiento de forma anlogo a los HIDS mencionados en la segunda seccin del presente artculo. La modalidad de entrenamiento consiste en el

Universidad de los Andes. Crdoba, Laverde, Ortiz, Puentes. Los IDS y los IPS: Una comparacin prctica

proceso de identificacin de patrones de comportamiento normales en el host. En particular se crea un perfil de relaciones frecuentes entre las aplicaciones y varios componentes del sistema como: el sistema operativo, otras aplicaciones, la memoria y los usuarios. Tales relaciones se ilustran en la Figura 7. Una vez se han establecido los patrones de comportamiento normal, el IPS se comporta de forma similar a los IDS basados en deteccin de anomalas a la hora de detectar las intrusiones. Lo anterior hace de esta categora de IPS los ms efectivos a la hora de detectar y prevenir vulnerabilidades generadas por errores en la programacin de las aplicaciones, adems, debido a que se apoyan en la deteccin de comportamientos anmalos y no en la coincidencia de firmas, es posible prevenir intrusiones muy recientes para las cuales todava no existe la definicin de sus firmas especficas [09]. Por su parte, la desventaja principal de este tipo de IPS al igual que los IDS basados en deteccin de anomalas- es que la fase de entrenamiento debe comprender absolutamente todos los comportamientos vlidos, a fin que ningn comportamiento normal no aprendido se catalogue como anormal. Lo anterior puede traer graves consecuencias como se discuti al final del literal B de sta seccin.
4) Switches hbridos.

y por consiguiente el que debe rechazar una aplicacin o un host determinado.


5) Aplicaciones engaosas (deceptive). Figura 8
LOS SWITCHES HBRIDOS. [10]

Al igual que los firewall de aplicacin / IDS, las aplicaciones engaosas aprenden el comportamiento de los servicios ofrecidos por cada uno de los host que protege. Una vez se detecta algn tipo de comportamiento sospechoso sobre un servicio/host existente o no, el IPS suplanta al servicio en caso que exista o lo simula en caso contrario, respondiendo al atacante y marcndolo de tal forma que sea posible identificarlo y bloquearlo posteriormente.

Los Switches hbridos son una combinacin entre los firewall de aplicacin /IDS y los Switches de nivel de aplicacin. Al igual qu estos ltimos, funcionan sobre dispositivos de hardware dedicados y optimizados para la inspeccin y manejo de paquetes, pero a diferencia de stos se basan en polticas de aceptacin de trfico (comportamiento) vlido de manera similar a los firewall de aplicacin/IDS, como se aprecia en la Figura 8. La fortaleza de esta aproximacin radica en el conocimiento detallado del trfico que debe aceptar

IV. UNA COMPARACIN PRCTICA ENTRE UN IDS Y UN IPS. Con el fin de ilustrar las diferencias a nivel prctico entre los IDS y los IPS, se llev a cabo un experimento con el fin de evaluar el impacto en el comportamiento y desempeo en una red de tres mquinas ante la presencia de un IDS o de un IPS.

Introduccin a la Informtica Forense. 2005-I

Universidad de los Andes. Crdoba, Laverde, Ortiz, Puentes. Los IDS y los IPS: Una comparacin prctica

A. Configuracin del experimento: La red. (Figura 9).


Figura 9
DIAGRAMA DE LA RED PARA EL EXPERIMENTO.

La mquina B nicamente tena abiertos los puertos TCP 22, 80 y 443 (los dos ltimos sobre los que corra el servidor HTTP Apache 2.0.52 [18]). B. Configuracin del experimento: El software. Como IDS, se utiliz Snort 2.3.0 [16] el cual fue brevemente comentado al final de la segunda seccin del presente artculo. Snort es un NIDS basado en deteccin de firmas relativamente liviano y altamente configurable. Su instalacin no es compleja requiriendo nicamente la instalacin previa de la librera de captura de paquetes Libpcap [19] y la librera de expresiones regulares PCRE [20]. [16] y el captulo 3 de [07] son fuentes claras y completas en lo referente al proceso de instalacin de Snort. La configuracin de Snort esta concentrada principalmente en el archivo snort.conf, ubicado usualmente en la carpeta etc del sistema o de la instalacin. En este archivo se definen todas las variables correspondientes a la red sobre la que opera el IDS y se referencian todos los archivos de reglas para el motor de deteccin (uno de los componentes arquitectnicos de Snort para la deteccin de intrusiones [06]-[07]). En particular, en snort.conf, se definen las variables $EXTERNAL_NET (direcciones de las redes externas), $HOME_NET (direccin CIDR de la intranet), $HTTP_SERVERS (direcciones de los Servidores Web en la intranet), entre otras. Para una descripcin detallada de este archivo de configuracin, es posible consultarlo ya que se encuentra cuidadosamente documentado, o en su defecto, remitirse a [7]-[21]. Por su lado, como IPS se utiliz Snort_inline 2.3.0 RC1 [21], un IPS inline cuya instalacin fue ms complicada que la del IDS. Es preciso tener en cuenta que en su principio Snort_inline fue un desarrollo independiente de Snort, que se bas en este ltimo para procesar el

Desde la mquina de monitoreo (M) se estableci una sesin SSH [28] con la mquina vctima (V) a fin de verificar la accesibilidad de esta ltima y monitorear su estado. La mquina fsica M simultneamente ejecutaba Linux Fedora Core 3 [29] sobre una mquina virtual VMWare [17] con el nico propsito de atacar la mquina V. La mquina bridge, para la primera parte del experimento funcionaba como IDS: analizando y reenviando (bridging) el trfico entre la mquina de monitoreo/ataque (MA) y la mquina vctima. En el caso de la segunda parte del experimento, la misma mquina funcionaba como IPS, es decir, no reenviaba el trfico entre las mquinas MA y V, sino que dependiendo del anlisis del trfico, lo reenviaba o rechazaba. B era una mquina con procesador Pentium II @ 333 MHz., memoria RAM de 192 MB y sistema operativo Linux -Fedora Core 3- instalado por defecto. Finalmente, V era un computador porttil con procesador AMD Mobile Athlon XP 2600+, 512 MB de memoria RAM y el mismo sistema operativo que las mquinas B y A.

Introduccin a la Informtica Forense. 2005-I

Universidad de los Andes. Crdoba, Laverde, Ortiz, Puentes. Los IDS y los IPS: Una comparacin prctica

10

trfico de red. [16]-[21] Desde su versin 2.3.0 Snort incorpor la funcionalidad inline como parte integral del proyecto. Para activar el modo IPS basta usar el modificador --enable-inline a la hora de configurar el script de instalacin antes de compilar el cdigo fuente de la aplicacin [21]. Adicionalmente, Snort_inline -a diferencia de Snort- debe operar en modo bridge, lo que requiere activar esta funcionalidad antes de poder ejecutar el IPS. La mayora de las fuentes consultadas recomiendan el uso del programa Bridge, disponible en [22] para configurar el bridging anteriormente descrito. Por otro lado, Snort_inline no toma los paquetes directamente de la NIC (Network Interface Card) por medio de Libpcap [19] como lo hace Snort, sino de la cola de salida del firewall de Linux (IPTables [23]). Por esto es necesario configurar IPTables de tal manera que enfile los paquetes entrantes en la susodicha cola para que puedan ser procesados por Snort_inline. Finalmente, el kernel de Linux no permite ejecutar simultneamente IPTables y Bridge, por lo que es necesario parcharlo con Ebtables [25] que es una herramienta de filtrado para firewalls en modo bridge. C. El experimento: DoS (Negacin del servicio) sobre Apache 2.0.52. El ataque consisti en una negacin de servicio sobre el servidor Apache 2.0.52 a partir del envo de mensajes HTTP con peticiones (request) mal formadas de la siguiente manera:
GET / HTTP/1.0\n [espacio] x 8000\n [espacio] x 8000\n [espacio] x 8000\n

la cantidad de trfico enviado a la vctima.


1) Deteccin del ataque con el IDS.

A partir de la descripcin del ataque presentada anteriormente, se compuso la siguiente regla con el fin de detectarlo en el IDS:
alert tcp $EXTERNAL_NET any -> $HTTP_SERVERS $HTTP_PORTS (pcre:"/\x20{6000}/";msg:"6000 espacios contiguos detectados";)

sta regla tiene como funcin alertar sobre cualquier datagrama IP, que provenga de cualquier direccin IP, hacia cualquiera de los servidores HTTP (en el caso del experimento la direccin IP de V: 192.168.0.105), sobre los puertos HTTP definidos en la variable $HTTP_PORTS en snort.conf (80 y 443). El payload de datos debe contener 6000 espacios seguidos para que se cumpla la regla y se alerte sobre la posible intrusin. Una vez se escribi la regla y se ejecut el IDS en B, se inici el ataque desde A, monitoreando desde M el estado de V, en particular, su uso de memoria RAM. Entre 03/16-00:51:02.609266 y 03/1601:02:53.836897 se ejecut el ataque con los siguientes resultados: El IDS se ejecut de tal manera que almacen un registro detallado de los paquetes capturados, encontrndose que la vctima recibi 101463 peticiones HTTP mal formadas en el lapso de tiempo en el que se ejecut el ataque. La captura de una peticin se muestra a continuacin:
=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ 03/16-00:51:02.611854 192.168.0.125:32771 -> 192.168.0.105:80 TCP TTL:64 TOS:0x0 ID:58731 IpLen:20 DgmLen:67 DF ***AP*** Seq: 0x916637C2 Ack: 0xC0BCFFCC Win: 0x5B4 TcpLen: 32 TCP Options (3) => NOP NOP TS: 512761 1220540 47 45 54 20 2F 20 48 54 54 50 2F 31 2E 30 0A GET / HTTP/1.0. =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+ 03/16-00:51:02.613799 192.168.0.125:32771 -> 192.168.0.105:80 TCP TTL:64 TOS:0x0 ID:58733 IpLen:20 DgmLen:1500 DF

La informacin sobre el ataque se obtuvo de [26] y [27], y la prueba de concepto de [27], cuyo cdigo est escrito en C y utiliza varios hilos para aumentar
Introduccin a la Informtica Forense. 2005-I

Universidad de los Andes. Crdoba, Laverde, Ortiz, Puentes. Los IDS y los IPS: Una comparacin prctica
***A**** Seq: 0x916637D1 Ack: 0xC0BCFFCC Win: 0x5B4 TcpLen: 32 TCP Options (3) => NOP NOP TS: 512763 1220540 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 (Siguen 87 lneas con 16 espacios (0x20)) =+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+

11

En la anterior captura se ve claramente la peticin HTTP (GET / HTTP/1.0), seguida por una cantidad elevada de espacios (0x20). Por su parte, el motor de deteccin del IDS

[**] [1:0:0] 6000 espacios contiguos detectados [**] [Priority: 0] 03/16-00:53:14.044895 192.168.0.125:32771 -> 192.168.0.105:80 TCP TTL:64 TOS:0x0 ID:60225 IpLen:20 DgmLen:1500 DF ***A**** Seq: 0x9AB88C02 Ack: 0xc0EEF748 Win: 0x5B4 TcpLen: 32 TCP Options (3) => NOP NOP TS: 177101 526711

Al ejecutarse el ataque, el consumo de memoria RAM aumento considerablemente en V como se muestra en la Figura 10.

Figura 10
ESTADO DE USO DE MEMORIA DE V.

detect y clasific los datagramas involucrados con las peticiones mal formadas, generando una entrada por cada uno de ellos en el log de alertas (ubicado usualmente en /var/log/snort/alert). Una de tales alertas se muestra a continuacin:

Luego de varios minutos de ejecucin del ataque desde A (Figura 11), no fue posible acceder al servidor Web, como se ve en la Figura 12, ni seguir verificando el estado de uso de la memoria de V va SSH.

Introduccin a la Informtica Forense. 2005-I

Universidad de los Andes. Crdoba, Laverde, Ortiz, Puentes. Los IDS y los IPS: Una comparacin prctica Figura 11
EJECUCIN DEL ATAQUE DESDE A.

12

Figura 12
ERROR EN EL ACCESO AL SERVIDOR WEB.

Figura 13
ESTADO DE MEMORIA EN EL SERVIDOR LUEGO DE 10 MINUTOS DE ATAQUE .

Introduccin a la Informtica Forense. 2005-I

Universidad de los Andes. Crdoba, Laverde, Ortiz, Puentes. Los IDS y los IPS: Una comparacin prctica Figura 14.
ESTADO DE USO DE MEMORIA DE V.

13

Finalmente, se captur directamente la informacin de uso de memoria de V (Figura 13), donde se aprecia que el ataque logr consumir 400,484 MB - 190,020 MB = 210,646 MB en alrededor de 10 minutos, logrando el objetivo de la negacin del servicio no solo sobre el servidor Web sino sobre todos los servicios de red activos en V.
2) Deteccin del ataque con el IPS.

la vctima. Despus de revisar las posibles causas para tal comportamiento, se concluy que la aplicacin de la regla, en particular, de la expresin regular era muy pesada y el IPS no alcanzaba a procesar los paquetes oportunamente. Debido a lo anterior, y en aras de probar el IPS, se modific la regla como sigue:
drop tcp $EXTERNAL_NET any -> $HTTP_SERVERS $HTTP_PORTS (pcre:"/\x20{100}/";msg:"100 espacios contiguos detectados -> Conexin reestablecida!";)

Dado que el IPS permite descartar los paquetes que concuerdan con determinada regla, se modific la accin de la regla usada por el IDS para detectar el ataque, de tal manera que se descartaran los datagramas relacionados con ste, as:
drop tcp $EXTERNAL_NET any -> $HTTP_SERVERS $HTTP_PORTS pcre:"/\x20{6000}/";msg:" 6000 espacios contiguos detectados -> Datagrama descartado!";)

Con la anterior regla, los paquetes del ataque eran debidamente descartados y nunca llegaban a V. Tales paquetes se registraban en el log de alertas de la siguiente manera:

Al probar dicha regla, se vio con sorpresa que el IPS no descartaba el paquete sino que lo reenviaba a
Introduccin a la Informtica Forense. 2005-I

Universidad de los Andes. Crdoba, Laverde, Ortiz, Puentes. Los IDS y los IPS: Una comparacin prctica

14

[**] [1:0:0] 100 espacios contiguos detectados -> Datagrama descartado! [**] [Priority: 0] 03/16-11:43:57.018220 192.168.0.125:32909 -> 192.168.0.105:80 TCP TTL:64 TOS:0x0 ID:39544 IpLen:20 DgmLen:1500 DF ***A**** Seq: 0x5CA13670 Ack: 0xDA343090 Win: 0x5B4 TcpLen: 32 TCP Options (3) => NOP NOP TS: 205048 534950 Figura 15
ERRORES A LA HORA DE INVOCAR LA ACCIN REJECT.

(reset) la conexin con el atacante mediante el envo de de un segmento TCP con las banderas FIN y ACK encendidas. Sin embargo, a la hora de ejecutar el IPS con la regla de reject, se desplegaron innumerables errores de Libpcap[19] relacionados con la imposibilidad de escribir la respuesta, como se ve en la Figura 15.

V. CONCLUSIONES. Se ha visto que la diferencia a nivel terico entre los IDS y los IPS radica en la forma como reaccionan ante las intrusiones: los primeros se limitan a detectar y notificar de la intrusin mientras que los segundos toman acciones de algn tipo frente a tales eventos. Debido a la anterior aseveracin, se tiene que el uso de los IDS implica un corto lapso de tiempo para enterarse, analizar y determinar la accin correctiva a adoptar frente a la intrusin, para finalmente reaccionar manualmente al ataque. Usando esta regla se encontr mediante el uso de un analizador de trfico de red en V que los paquetes hostiles no lograron llegar, debido a lo anterior el uso de memoria no present aumentos significativos (Figura 14). Sin embargo, al ejecutar el ataque desde varios procesos simultneos, el IPS no estuvo en capacidad de analizar y por ende descartar los paquetes involucrados en el ataque, permitindoles el paso hacia V. Finalmente, alternativa: se prob la siguiente regla Por esta razn, el fuerte de los IDS radica en su utilidad a posteriori, ya que ayudan a la reconstruccin del ataque para su posterior anlisis. Sin embargo, muchas veces es deseable detener el ataque de manera oportuna, campo en el cual los IPS son la solucin adecuada, siempre y cuando estn debidamente configurados y puestos a punto con el fin de maximizar su nivel de precisin. Finalmente, a partir del experimento fue posible determinar que la efectividad de los IDS/IPS est altamente ligada a la cantidad de recursos destinados para su operacin. Por esto, es preciso calibrar las reglas de acuerdo al ambiente de hardware en que opera el sistema, ya que pueden exigir un alto nivel de procesamiento, incluso uno mayor al ofrecido por la infraestructura de hardware.

reject tcp $EXTERNAL_NET any -> $HTTP_SERVERS $HTTP_PORTS (pcre:"/\x20{100}/";msg:" 100 espacios contiguos detectados -> Conexin reestablecida!";)

El propsito de esta regla es descartar los paquetes comprometidos en el ataque y reestablecer


Introduccin a la Informtica Forense. 2005-I

Universidad de los Andes. Crdoba, Laverde, Ortiz, Puentes. Los IDS y los IPS: Una comparacin prctica REFERENCIAS [01] D. Lehmann. Intrusion Detection FAQ. Disponible en: http://www.sans.org/resources/idfaq/what_is_id.php [02] H. Debar, An introduction to Intrusion-Detection Systems. IBM Research, Zurich Research Laboratory. [03] P. Porras y A. Valdes. Live traffic analysis of TCP/IP gatewaysen Proceedings of the 1998 ISOC Symposium on Network and Distributed System Security, San Diego, CA, March 1998. [04] S. Axelsson, The Base-Rate Fallacy and its Implicatios for the Difficulty of Intrusion Detection, 20 de mayo de 1999. Disponible en: http://www.raidsymposium.org/raid99/PAPERS/Axelsson.pdf. [06] R. Rehman, Intrusion detection with SNORT: Advanced IDS techniques using Snort, Apache, MySQL, Php and ACID. Prentice Hall PTR, 2003. [07] R. Alder, J. Babbin, A. Doxtater, J. Foster, T. Kohlenberg, M. Rash. Snort 2.1 Intrusion Detection, Second Edition, Syngress, 2004. [08] T. Doty. New Approach To Intrusion Detection: Intrusion Prevention. 23 de enero de 2002. Disponible en: http://www.itsecurity.com/papers/doty1.htm [09] W. Jackson. Intrusion prevention systems provide an active line of defense. 16 de febrero de 2005. Disponible en: http://www.gcn.com/cgibin/udt/im.display.printable?client.id=gcndaily2&story.id=350 69 [10] N. Desai. Intrusion Prevention Systems: the Next Step in the Evolution of IDS. 27 de febrero de 2003. Disponible en: http://www.securityfocus.com/printable/infocus/1670 [11] M. DeShon. Intrusion prevention versus intrusion detection. Disponible en: http://www.secureworks.com/en/html/printer/internet/techRes ourceCenter/Intrusion-prevention-versus-intrusiondetection.html [12] McClellan Consulting. Layer 4 through Layer 7 Switching. Disponible en: http://www.mcclellanconsulting.com/whitepapers/Layer4throu gh7.pdf [13] Snort_inline. inline.sourceforge.net/ Disponible en: http://snort-

15

[18] Apache, Apache HTTP Server Project . Disponible en: http://httpd.apachet.org. [19] Tcpdump/Libpcap. http://www.tcpdump.org/ Disponible en:

[20] P. Hazle. PCRE - Perl Compatible Regular Expressions. Disponible en: http://www.pcre.org/ [21] W. Metcalf. Snort Inline. Disponible en: http://snortinline.sourceforge.net/ [22] S. Hemminger. Bridge - Linux Ethernet bridging. Disponible en: http://bridge.sourceforge.net/ [23] O. Andreasson. Iptables Tutorial 1.1.19. Disponible en: http://www.linuxsecurity.com/resource_files/firewalls/IPTable s-Tutorial/iptables-tutorial.html [24] The Honeynet Project. Tools for Honeynets. Disponible en: http://www.honeynet.org/tools/ [25] EBTables. http://ebtables.sourceforge.net/. Disponible en:

[26] C. Trivedi. FullDisclosure: DoS in Apache 2.0.52 ?. Disponible en: http://seclists.org/lists/fulldisclosure/2004/Nov/0022.html [27] D. Guido. Apache Multiple Space Header DoS (Multi-Threaded Exploit). Disponible en: http://www.securiteam.com/exploits/6O00G2ABPS.html [28] OpenSSH http://www.openssh.com/ [29] Fedora Core http://fedora.redhat.com. 4.0. 3. Disponible Disponible en: en:

[14] G. Bruneau. The History and Evolution of Intrusion Detection. Disponible en: http://www.sans.org/rr/whitepapers/detection/344.php [15] A. Chuvakin and C. P. Bruneau. Security Warrior. O Reilly 2004. [16] SourceFire. http://www.snort.org. [17] VMWare Inc, http://www.vmware.com. Snort.org. VMWare. Disponible Disponible en: en:

Introduccin a la Informtica Forense. 2005-I

Potrebbero piacerti anche