Evolución de los sistemas de detección, prevención y análisis de incidentes

El desarrollo y el incremento de las redes de datos alrededor del mundo han impulsado la creación de mecanismos para compartir, transferir o distribuir información por medios digitales. La facilidad, eficiencia y conveniencia de utilizar medios electrónicos implica, hasta cierto punto, exponer dicha información a determinadas amenazas que existen en ese mundo digital.

Amenazas potenciales como virus, gusanos, ataques dirigidos, negación de servicio (DoS), escaneos, botnets, spam, etc., no son conceptos nuevos, durante los últimos años han ido evolucionando y adaptándose a los nuevos mecanismos de comunicación digital y en general al desarrollo de Internet. Tomando esto en cuenta, es entendible suponer la necesidad de poder identificar el origen de dichas amenazas con la finalidad de aplicar algún mecanismo de mitigación.

La importancia de poder identificar y detectar el tráfico malicioso se justifica en el hecho de que este tipo de tráfico es el que puede alterar el funcionamiento de una red o, en el peor de los casos, causar tal impacto que interrumpa por completo la actividad general del entorno.

Por ejemplo, un usuario común que utiliza algún procesador de texto, crea presentaciones electrónicas, navega en Internet buscando noticias o algún artículo de interés, etc. de pronto ve interrumpida su tarea por alguna causa extraña. Su computadora despliega mensajes de error, cada minuto que pasa se complica navegar en Internet y controlar el equipo debido a la lentitud de respuesta hasta que finalmente, llega al extremo de un reinicio desesperado, cuya probabilidad de pérdida de información es alta.

El usuario está exasperado y asustado, no sabe qué pasa pero por alguna razón no puede continuar trabajando. Al reiniciar el equipo e intentar reanudar sus actividades, advierte que su información está incompleta y que la lentitud para trabajar es ahora recurrente. Lo primero que le viene a la mente: “es un virus, mi máquina está infectada”. Esto en parte demostraría la creencia de que todo lo malicioso que ocurre en una computadora se debe a “un virus”, sin embargo podría tratarse de algo mucho más complejo. Identificar la causa real del problema o algún indicio certero, puede no sólo corregir el problema, sino también evitarlo en el futuro.

Con el fin de atender esta tarea, el SANS Institute[1], a través del Internet Storm Center (ISC), cuenta con un cálculo denominado “Survival Time”[2], el cual consiste en medir el tiempo promedio que tarda un equipo de cómputo en ser atacado o alcanzado por algún tipo de malware en propagación, considerando que se expone a una red pública sin restricciones. En caso de que el equipo no contara con los parches adecuados, entonces esta medición significaría el tiempo en que el equipo sería infectado o vulnerado. En la siguiente figura se aprecia como las últimas mediciones indican que el “survival time” de un equipo Unix es de aproximadamente 3700 minutos, mientras que el de un equipo Windows es casi de 450 minutos. Esto nos da una muestra del verdadero problema con el tráfico de red malicioso.

art_IDS1

SANS ISC-Survival time (enero 2005 - agosto de 2010)

¿Cómo saber si determinado tráfico es anormal? ó ¿cómo definir si el tráfico monitoreado es malicioso? Este tipo de cuestiones pueden responderse a través de distintos puntos de vista. Por un lado, se tiene la definición de políticas de una organización en las cuales se puede establecer lo que se considera como anormal y por otro el comportamiento general de determinadas amenazas que definen muy bien a un evento como un incidente de seguridad.

Algunos métodos para detectar “tráfico anormal” se basan en la comparación y análisis del comportamiento “esperado” de cierto tipo de protocolos de comunicación o aplicaciones. Es decir, si se tiene bien identificada la estructura, forma y comportamiento del tráfico según su naturaleza, entonces cualquier patrón fuera de ella representa un factor para poder identificarlo como anormal. Algunos mecanismos para poder lograr dicha identificación y detección son las técnicas basadas en análisis de patrones, las herramientas especializadas y el análisis de bitácoras.

IDS, alternativa pasiva para detección de tráfico malicioso

Los sistemas de detección de intrusos tienen en realidad sus orígenes en el concepto de auditorías. Desde los años 50’s, cuando se realizaban diversos tipos de revisiones, se comenzaron a definir técnicas para identificar posibles anomalías. Fue en la década de los 80’s, cuando surgieron los primeros sistemas para identificar y detectar en tiempo real posibles patrones en los sistemas de aquellos tiempos.

Actualmente, los sistemas de detección de intrusos (IDS) son dispositivos físicos o lógicos que permiten analizar el tráfico de red para identificar posibles paquetes maliciosos o anómalos. Son un mecanismo pasivo de detección, ya que su tarea fundamental es alertar pero no actuar.

Estos sistemas pueden proveer de información muy específica sobre la actividad detectada debido a que  su análisis sobre los paquetes de red es más específico que el que realizado por otros mecanismos de seguridad, como los firewalls. Esto convierte a los IDS en herramientas muy poderosas para conocer el panorama de la actividad en la red.

El funcionamiento general de los IDS se basa en detectar tráfico malicioso mediante firmas o anomalías.

La detección por firmas consiste en la definición de un patrón con características específicas, las cuales comúnmente se basan en patrones de amenazas conocidas. Contienen características como tipo de tráfico, dirección de flujo, protocolo, direcciones IP, puertos o incluso el contenido de datos en el paquete. Cuando un paquete de red coincida con este patrón, entonces se levantará la alerta proporcionando la información relacionada. Los desarrolladores de IDS comúnmente liberan nuevas firmas para poder detectar amenazas recientes.

Por otro lado, la detección basada en anomalías funciona definiendo ciertos criterios base o baselines, que suponen un funcionamiento normal del sistema o de la red. Cuando se detecta cierta actividad que no corresponde con el baseline en un cierto rango, entonces el IDS lo puede interpretar como una anomalía, y en su caso, identificarlo como tráfico malicioso.

Con los IDS existen dos problemas principales: los falsos positivos y los falsos negativos. Los primeros se refieren a todos los eventos levantados como alertas pero que en realidad no se trataban de tráfico malicioso. Esto puede deberse a varios motivos, por ejemplo que alguna situación o aplicación llevó a generar el paquete con las características de la firma, un aspecto a tomar en cuenta es que mientras más general se defina la regla, más falsos positivos se pueden tener. Los falsos negativos consisten en todos los eventos que a pesar de presentarse en la red no son alertados por el IDS. En realidad, este tipo de omisiones puede implicar un mayor riesgo pues, desde cierto punto de vista, es más conveniente detectar algo que no existe, que no detectar algo que en verdad existe y que es malicioso, aunque debe tenerse presente que también contar con un número significativo de falsos positivos puede llegar a ser contraproducente.

Tipos de IDS

IDS basados en host

Funciona monitoreando la actividad de un sistema local. Por su esquema de funcionamiento, analiza el tráfico de red que entra y sale de dicho equipo, así como los cambios en el sistema de archivo y actividad del sistema en general.

art_IDS2

Esquema de un IDS de host

IDS basados en red

Analiza el tráfico de un equipo o red. Puede instalarse en un equipo analizando sólo el tráfico que fluye a través de él, sin embargo para que funcione plenamente, debe implementarse un esquema en donde reciba el tráfico de todos los equipos conectados a la red (comúnmente llamado “port mirror”). Generalmente, se instala en el perímetro de la red o subred para poder monitorear el tráfico de entrada y salida de la misma. El éxito en su funcionamiento depende de su correcta ubicación.

art_IDS3

Esquema de un IDS de red

IDS distribuidos

Es un esquema de varios IDS desplegados a lo largo de una red, los cuales centralizan la información. Este tipo de esquemas puede ser útil en redes de gran tamaño, sin embargo debido a la gran cantidad de información que implica, necesita un monitoreo y mantenimiento constante.

 

art_IDS4

Esquema de un IDS distribuido

Los factores clave para el buen funcionamiento de los IDS son entonces: ubicación, buenas firmas, baselines, criterios, mantenimiento, etcétera.

IDS e IPS

Los sistemas de prevención de intrusos o IPS son también mecanismos físicos o lógicos para la detección de tráfico malicioso basándose en firmas o anomalías. La principal diferencia con los IDS es que los IPS son dispositivos activos que tienen la característica de actuar bajo demanda según las alertas detectadas, a esto se le conoce como “inline”. Esto significa que, a partir de que un evento es detectado, el sistema puede aplicar automáticamente una medida de mitigación. lo cual implica que los IPS tengan capacidades de firewall. Por estas características, a este tipo de dispositivos también se les conoce como IDP o sistemas de detección y prevención de intrusos.

Con este esquema podría pensarse que los IPS son mejores que los IDS, o incluso que podrían sustituir a los firewalls. Desde hace algunos años, firmas internacionales de seguridad y otras organizaciones de desarrollo e investigación, han abierto un gran debate sobre si los IDS han quedado obsoletos o representan una tecnología que será sustituida por los IPS.

Gartner, organización conocida mundialmente por dedicarse a la tecnología y los negocios, publicó en 2003 una declaración donde afirmaba “Intrusion Detection Systems a Market Failure[3], mientras otras opiniones expresaban lo contrario. El argumento era que los IPS no podrían aún representar la nueva generación de dispositivos de detección debido a que aún eran inmaduros. Lo que evidente es que aún existen consideraciones que deben tomarse en cuenta para la implementación de un IPS.

Primeramente está el problema de los falsos positivos. Con los IDS, este problema implica solamente realizar un proceso de discriminación de alertas, el cual en el peor de los casos representa un trabajo adicional y excesivo para el administrador de la red. En cambio, con un IPS un falso positivo podría representar una auto-negación de servicio o problema general con la red, pues de manera automática, aplicaría las reglas en su firewall interno para poder mitigar “el ataque”. Es por eso que las firmas de detección deben definirse con el criterio más acertado posible para minimizar el número de falsos positivos.

En conclusión, las características de los IDS han evolucionado como respuesta al desarrollo de amenazas en Internet. Si bien es cierto que son un mecanismo para detección, debe tomarse también en cuenta que algunas características que los llevan de pasivos a activos como la capacidad de mitigación y el análisis de patrones, han abierto nuevas líneas de desarrollo e investigación para nuevos sistemas de detección adaptados a las necesidades de las nuevas tecnologías y de la industria.

Referencias

 

[1] Organización internacional dedicada a la investigación, capacitación y publicación de recursos relacionados con seguridad en cómputo.

[2] http://isc.sans.edu/survivaltime.html

[3] Gartner Information Security Hype Cycle Declares Intrusion Detection Systems a Market Failure. http://www.gartner.com/5_about/press_releases/pr11june2003c.jsp