IDS e IPS: características y diferencias
El término IDS (sistema de detección de intrusiones) hace referencia a un mecanismo que escucha el tráfico en la red para detectar actividades anormales o sospechosas, y de este modo, reducir el riesgo de intrusión. Conoce más sobre las características de este importante software en informática.
¿Cuáles son los dos principales tipos de sistemas de detección de intrusiones?
Existen dos tipos de IDS:
- N-IDS o sistema de detección de intrusiones de red, que garantiza la seguridad dentro de la red.
- H-IDS o sistema de detección de intrusiones en el host, que garantiza la seguridad en el host.
Un N-IDS necesita un hardware exclusivo. Este forma un sistema que verifica paquetes de información que viajan por una o más líneas de la red. Los verifica con la finalidad de descubrir si se ha producido alguna actividad maliciosa o anormal. Este sistema pone uno o más de los adaptadores de red exclusivos del sistema en una especie de modo invisible, de tal forma que no tengan dirección IP ni protocolos asignados. Es común encontrar diversos IDS en diferentes partes de la red. Por lo general, se colocan líneas fuera de la red para estudiar los posibles ataques, así como también se colocan líneas internas para analizar solicitudes que hayan pasado a través del firewall o que se han realizado desde dentro.
El H-IDS se encuentra en un host particular. Por lo tanto, su software cubre una amplia gama de sistemas operativos como Windows, Solaris, Linux, HP-UX y Aix, entre otros. El H-IDS actúa como un servicio estándar en el sistema de un host. Tradicionalmente, analiza la información particular almacenada en registros (como registros de sistema, mensajes, lastlogs y wtmp) y también captura paquetes de la red que se introducen y salen del host para verificar las señales de intrusión como, por ejemplo, ataques por denegación de servicio, puertas traseras, troyanos, intentos de acceso no autorizado, ejecución de códigos malignos o ataques de desbordamiento de búfer.
¿Qué técnicas existen para detectar intrusiones?
Por lo general, el tráfico en la red está compuesto por datagramas de IP. Un N-IDS puede capturar paquetes mientras estos viajan a través de las conexiones físicas a las que está sujeto. También contiene una lista TCP/IP que se asemeja a los datagramas de IP y a las conexiones TCP. Puede utilizar las siguientes técnicas para detectar intrusiones:
- Verificación de la lista de protocolos: algunas formas de intrusión, como Ping de la muerte y escaneo silencioso TCP utilizan violaciones de los protocolos IP, TCP, UDP e ICMP para atacar un equipo. Una simple verificación del protocolo puede revelar paquetes no válidos e indicar esta táctica comúnmente utilizada.
- Verificación de los protocolos de la capa de aplicación: algunas formas de intrusión emplean comportamientos de protocolos no válidos, como WinNuke, que utiliza datos NetBIOS no válidos (al agregar datos fuera de la banda). Para detectar eficazmente estas intrusiones, un N-IDS debe implementar una amplia variedad de protocolos de la capa de aplicación, como NetBIOS, TCP/IP, etc. Esta técnica es rápida, pues el N-IDS no necesita examinar la base de datos de firmas en su totalidad para secuencias de bytes particulares. También es más eficiente, ya que elimina algunas falsas alarmas. Por ejemplo, al analizar protocolos, N-IDS puede diferenciar un Back Orifice PING (peligro bajo) de un Back Orifice COMPROMISE (peligro alto).
- Reconocimiento de ataques de comparación de patrones: esta técnica de reconocimiento de intrusión es el método más antiguo de análisis N-IDS y todavía es de uso frecuente. Consiste en la identificación de una intrusión al examinar un paquete y reconocer, dentro de una serie de bytes, la secuencia que corresponde a una firma específica. Por ejemplo, al buscar la cadena de caracteres cgi-bin/phf, se muestra un intento de sacar provecho de un defecto del script CGI phf. También se utiliza como complemento de los filtros en direcciones IP, en destinatarios utilizados por conexiones y puertos de origen y/o destino. Se puede refinar si se combina con una sucesión o combinación de indicadores TCP. Esta táctica es usada por los grupos N-IDS Network Grep, que se basan en la captura de paquetes originales dentro de una conexión supervisada y en su posterior comparación al analizar las expresiones regulares. Este intentará hacer coincidir las secuencias en la base de firmas con el contenido del paquete capturado.
La ventaja principal de esta última técnica radica en la facilidad para actualizar y en la gran cantidad de firmas que se encuentran en su base. Sin embargo, cantidad no siempre significa calidad. Por ejemplo, los 8 bytes CE63D1D2 16E713CF, cuando se colocan al inicio de una transferencia de datos UDP, indican un tráfico Back Orifice con una contraseña predeterminada. Aunque el 80% de las intrusiones utilicen la contraseña predeterminada, el 20% utilizarán contraseñas personalizadas y no serán necesariamente reconocidas por el N-IDS. Por ejemplo, si la contraseña se cambia a "evadir", la serie de bytes se convertirá en 8E42A52C 0666BC4A, lo que automáticamente la protegerá de que el N-IDS la capture. Además, la técnica inevitablemente conducirá a un gran número de falsas alarmas y falsos positivos.
Existen otros métodos para detectar e informar sobre intrusiones, como el método Pattern Matching Stateful, y para controlar el tráfico peligroso o anormal en la red. En conclusión, un perfecto N-IDS es un sistema que utiliza las mejores partes de todas las técnicas mencionadas anteriormente.
¿Cuáles son los principales métodos que usan los IDS para detectar intrusiones?
Los principales métodos utilizados por N-IDS para informar y bloquear intrusiones son:
- Reconfiguración de dispositivos externos (firewalls o ACL en routers): comando enviado por el N-IDS a un dispositivo externo (como un filtro de paquetes o un firewall) para que se reconfigure inmediatamente y así bloquear la intrusión. Esta reconfiguración es posible a través del envío de datos que expliquen la alerta (en el encabezado del paquete).
- Envío de una trampa SNMP a un hipervisor externo: envío de una alerta (y detalles de los datos involucrados) en forma de un datagrama SNMP a una consola externa como HP Open View Tivoli, Cabletron, Spectrum, etc.
- Envío de un correo electrónico a uno o más usuarios: envío de un correo electrónico a uno o más buzones de correo para informar sobre una intrusión seria.
- Registro del ataque: se guardan los detalles de la alerta en una base de datos central, incluyendo información como el registro de fecha, la dirección IP del intruso, la dirección IP del destino, el protocolo utilizado y la carga útil.
- Almacenamiento de paquetes sospechosos: se guardan todos los paquetes originales capturados y los paquetes que dispararon la alerta.
- Apertura de una aplicación: se lanza un programa externo que realice una acción específica (envío de un mensaje de texto SMS o la emisión de una alarma sonora).
- Envío de un ResetKill: se construye un paquete de alerta TCP para forzar la finalización de una conexión (solo válido para técnicas de intrusión que utilizan el protocolo de transporte TCP).
- Notificación visual de una alerta: se muestra una alerta en una o más de las consolas de administración.
¿Cuál es la diferencia entre IDS e IPS?
En la prensa especializada, cada vez resuena más el término IPS (Sistema de prevención de intrusiones) que viene a sustituir al IDS "tradicional" o para hacer una distinción entre ellos. El IPS es un sistema de prevención/protección para defenderse de las intrusiones y no solo para reconocerlas e informar sobre ellas, como hacen la mayoría de los IDS.
Existen dos características principales que distinguen a un IDS (de red) de un IPS (de red). El IPS se sitúa en línea dentro de la red IPS y no solo escucha pasivamente a la red como un IDS (comúnmente colocado como un rastreador de puertos en la red). Un IPS tiene la habilidad de bloquear inmediatamente las intrusiones, sin importar el protocolo de transporte utilizado y sin volver a configurar un dispositivo externo. El IPS puede filtrar y bloquear paquetes en modo nativo (utilizando técnicas como la caída de una conexión, la caída de paquetes ofensivos o el bloqueo de un intruso).