Sistemas de Detección y Prevención de Intrusiones (IDS/IPS)
1. Concepto base
IDS (Intrusion Detection System)
→ "Detecto, pero no actúo."
🔎 Es como una alarma silenciosa en un museo: observa, analiza, y si algo sospechoso ocurre, envía una alerta a seguridad.
IPS (Intrusion Prevention System)
→ "Detecto y actúo."
🛡️ Es como un guardaespaldas armado que, si detecta una amenaza, interviene automáticamente: bloquea, expulsa o corta la conexión.
2. Diferencias clave IDS vs IPS
IDS
-
Modo de operación: Pasivo, solo alerta.
-
Posición en red: Normalmente se conecta en modo espejo (SPAN), por lo que no intercepta tráfico directamente.
-
Riesgo: No interrumpe el tráfico, pero puede detectar una amenaza demasiado tarde.
-
Reacción: Manual. Requiere intervención humana para actuar.
IPS
-
Modo de operación: Activo, detecta y bloquea.
-
Posición en red: Se coloca en línea, interceptando el tráfico directamente.
-
Riesgo: Puede provocar falsos positivos críticos que bloqueen tráfico legítimo.
-
Reacción: Automática. Actúa sin intervención inmediata del analista.
3. Tipos: Basados en Host (HIDS/HIPS) vs Basados en Red (NIDS/NIPS)
HIDS (Host-based IDS)
-
Visión: Interna, local al sistema donde está instalado.
-
Función: Analiza archivos, logs, procesos y comportamiento interno.
-
Ventaja: Detecta cambios locales que no se ven en red, como modificaciones en archivos críticos o ejecución de procesos no autorizados.
-
Limitación: No detecta amenazas que solo se mueven en la red externa.
-
Ejemplo: OSSEC.
HIPS (Host-based IPS)
-
Visión: Igual que HIDS, pero con capacidad de acción.
-
Función: Previene cambios o procesos sospechosos dentro del host.
-
Riesgo: Alto potencial de falsos positivos si no se afina bien.
-
Ejemplo: Wazuh (con respuesta activa), Symantec Endpoint Protection.
NIDS (Network-based IDS)
-
Visión: Externa, analiza todo el tráfico que pasa por la red.
-
Función: Detecta amenazas que viajan entre sistemas, como escaneos de puertos o ataques de denegación de servicio (DDoS).
-
Ventaja: Excelente para detectar ataques distribuidos.
-
Limitación: No ve procesos internos de cada host.
-
Ejemplo: Snort, Zeek.
NIPS (Network-based IPS)
-
Visión: Igual que NIDS, pero con capacidad de bloquear.
-
Función: Puede cortar paquetes, cerrar conexiones, bloquear direcciones IP en tiempo real.
-
Riesgo: Un mal diseño puede causar caída de servicios o bloqueo de tráfico legítimo.
-
Ejemplo: Suricata.
4. Herramientas clave y cómo se usan
Snort
-
Es uno de los IDS/IPS más populares y potentes del mundo.
-
Analiza el tráfico en base a reglas definidas por el usuario o comunidad.
-
Soporta detección por firmas, protocolos y anomalías.
-
Puede integrarse con SIEMs y generar logs detallados.
Suricata
-
Más moderno y rápido que Snort.
-
Usa múltiples núcleos de CPU (multihilo) para mejorar rendimiento.
-
Compatible con reglas de Snort, pero además analiza DNS, TLS, HTTP/2.
-
Ideal para entornos de red de alto volumen.
OSSEC
-
Es un HIDS de código abierto muy robusto.
-
Analiza registros del sistema, detecta rootkits, verifica integridad de archivos.
-
Puede lanzar respuestas automáticas como bloquear IPs o matar procesos.
-
Multiplataforma: Linux, Windows, macOS.
Security Onion
-
Distro completa de seguridad para analistas.
-
Incluye Snort, Suricata, Zeek, OSSEC, Kibana y más.
-
Pensada para SOCs, forense digital y detección de amenazas.
-
Permite tener un laboratorio completo Purple Team en una sola ISO.
5. Alegoría Purple Team
Imagina un castillo:
-
🔴 Red Team intenta colarse por túneles (tráfico cifrado), disfrazado (payload ofuscado) o sobornando guardias (exploits sociales).
-
🔵 IDS serían los espías del castillo: detectan movimientos extraños y avisan a los generales.
-
🔵 IPS serían las torres defensivas que disparan flechas cuando detectan movimiento hostil.
-
🟣 Purple Team diseña la arquitectura del castillo, capacita a los espías y controla el disparo de las flechas según reglas adaptadas a cada ataque detectado en simulaciones.
6. Ventajas del uso combinado IDS/IPS – Híbrido defensivo ideal
-
NIDS → Ve amenazas que se mueven en la red (ataques externos, DDoS, escaneo de puertos).
-
HIDS → Detecta ataques dentro de los servidores o endpoints (modificación de logs, malware silencioso).
-
IPS → Bloquea amenazas conocidas y automatiza la defensa.
-
IDS → Alerta sobre patrones nuevos y no bloquea por error.
✅ Mejor práctica: Implementar un entorno híbrido con NIDS + HIDS + IPS y correlación centralizada (SIEM).
Falsos positivos y negativos
-
⚠️ Falso positivo: el sistema alerta sobre algo que no era una amenaza real.
-
Ej: Un backup automático que se parece a un ataque de exfiltración.
-
-
⚠️ Falso negativo: el sistema no detecta una amenaza real.
-
Ej: Malware ofuscado que el IDS no reconoce por firma.
-
🟣 Purple Team tiene la misión de:
-
Afinar las reglas (Snort/Suricata).
-
Automatizar whitelist/blacklist.
-
Simular ataques para testear la detección real (detección basada en comportamiento vs firma).
Laboratorio real
Objetivo práctico:
Implementar IDS con Snort y HIDS con OSSEC en 2 máquinas Linux conectadas por red virtual (puede ser VirtualBox o GNS3).
-
🧱 Snort: instala en el gateway o router.
-
🛠 OSSEC: instala en servidor web interno.
-
🚨 Simula ataques (nmap, SQLi, DoS) y observa:
-
Logs de alertas.
-
Reacción del sistema.
-
Falsos positivos.
-
-
🎯 Afina reglas y genera informes.
¿Cómo avanzas como Purple Team Leader?
-
Aprende a escribir reglas en Snort y Suricata.
-
Diseña escenarios de ataque y detección con OSSEC.
-
Automatiza respuestas (bloqueos, alertas, scripts de contención).
-
Implementa correlación con herramientas como Wazuh + Kibana + Elastic.
-
Crea un dashboard Purple Team que combine:
-
Logs + Detecciones + KPIs + Posturas de seguridad.
-
MÉTODOS DE DETECCIÓN IDS / IPS
1. El motor de análisis – El corazón del IDS/IPS
Imagina al motor de análisis como el cerebro de un sabueso de élite entrenado en seguridad. Recibe todo el "olor" del tráfico o de eventos (gracias al sensor), y decide si lo que huele es normal, sospechoso, o directamente peligroso. Su comportamiento depende del entrenamiento que haya recibido, es decir, del conjunto de reglas cargadas en su memoria.
Este motor puede actuar de varias formas:
-
Ignorar (si el patrón es benigno),
-
Registrar (si es de interés pero no peligroso),
-
Alertar (si es potencialmente peligroso),
-
Bloquear (si está en modo IPS activo y hay certeza del peligro).
2. Detección basada en firmas – "El catálogo de ladrones conocidos"
Este método es como un vigilante que lleva una ficha policial de todos los criminales conocidos: nombres, caras, modus operandi.
-
Se basa en patrones específicos de ataques (firmas).
-
Si el tráfico coincide con uno de esos patrones, salta una alerta o se bloquea (si es IPS).
-
Ejemplo: una firma que detecta el uso del comando xp_cmdshell en una petición HTTP – típico de un ataque SQLi.
Ventajas:
-
Alta precisión para ataques conocidos.
-
Bajo consumo de recursos.
Limitaciones:
-
No detecta ataques nuevos (día cero).
-
Depende de actualizaciones constantes del feed de firmas.
-
Puede ser eludido por atacantes que alteran levemente su patrón.
🛡️ Claves Purple Team:
-
Automatiza la actualización de firmas desde fuentes confiables.
-
Usa HTTPS y autenticación para validar tus fuentes.
-
Prioriza feeds de comunidades como Emerging Threats o el propio Snort.
3. Detección basada en comportamiento – "El sabueso que reconoce hábitos"
Aquí el motor no busca patrones específicos, sino aprende cómo luce el tráfico "normal" en tu red. Cualquier desviación significativa genera una alerta.
Funciona como un perro guardián que conoce a cada persona del barrio y, aunque no tenga su ficha policial, detecta cuando alguien actúa raro o ajeno.
-
Se entrena con tráfico histórico para definir lo que es "esperado".
-
Usa estadísticas, heurísticas, y aprendizaje automático.
-
Detecta día cero, amenazas internas, y APTs silenciosas.
Ventajas:
-
Detección proactiva de amenazas nuevas o sutiles.
-
Capacidad de adaptación a entornos específicos.
Limitaciones:
-
Alta tasa de falsos positivos iniciales.
-
Requiere tiempo de aprendizaje para madurar.
-
Consume más recursos.
🛡️ Claves Purple Team:
-
Usa entornos controlados para entrenar el modelo (sandbox).
-
Evalúa regularmente la tasa de falsos positivos.
-
Crea perfiles por rol (ej. tráfico esperado en un servidor DNS vs un endpoint de usuario).
4. NBAD, UEBA y NTA – El análisis del contexto
La evolución de los sistemas de comportamiento ha dado lugar a tres tecnologías:
a) NBAD (Network Behavior Anomaly Detection)
-
Analiza flujo de red en tiempo real.
-
Usa heurística y modelos estadísticos.
-
Identifica cambios sutiles en volumen, frecuencia o patrón.
b) UEBA (User and Entity Behavior Analytics)
-
Se enfoca en el comportamiento de usuarios y sistemas.
-
Detecta cuando un usuario actúa fuera de su patrón habitual.
-
Crucial para detectar insiders o cuentas comprometidas.
c) NTA (Network Traffic Analysis)
-
Similar a NBAD, pero más especializado.
-
Se integra en flujos netflow, sFlow, etc.
-
Alta visibilidad sobre lateral movement o exfiltración de datos.
🟣 Mentalidad Purple Team:
-
Correlaciona datos de UEBA con los logs de HIDS (como OSSEC o Wazuh).
-
Combina NTA con reglas de Snort para detectar evasiones.
5. Análisis de tendencias – "El sexto sentido del analista"
No todo se detecta en tiempo real. El análisis de tendencias es una habilidad estratégica que implica:
-
Identificar picos inusuales de alertas: ¿Aumentaron los escaneos de puertos?
-
Reconocer patrones ocultos: por ejemplo, varios ataques menores que apuntan a la misma subred.
-
Afilar reglas y reducir ruido: si una alerta salta 100 veces al día sin acción, probablemente haya que refinar la regla.
Beneficios:
-
Mejora la eficacia del sistema.
-
Identifica amenazas persistentes o campañas dirigidas.
-
Refuerza la toma de decisiones basada en datos.
🛡️ Claves Purple Team:
-
Crea dashboards en Kibana para ver alertas por tiempo, origen, destino y tipo.
-
Usa scripts para correlacionar eventos por geolocalización y tipo de vector.
-
Automatiza tareas de priorización para centrarte en lo crítico.
6. Ejemplo táctico de integración
-
Snort detecta una firma de SQLi → IDS genera alerta.
-
UEBA detecta que el usuario que hizo la petición no suele acceder a ese recurso → alerta de riesgo interno.
-
NTA registra que hay tráfico saliente cifrado hacia un país no habitual → exfiltración sospechosa.
-
IPS bloquea la conexión en tiempo real.
-
SIEM correlaciona todo → eleva incidente de alta prioridad.
-
Purple Team analiza la causa raíz y afina reglas, crea un nuevo caso de threat hunting y entrena al Blue Team con el incidente.
CURIOSIDADES Y CLAVES OCULTAS SOBRE IDS / IPS
1. Snort y Suricata no son enemigos… son aliados
Ambos usan reglas similares y pueden coexistir en el mismo entorno. Hay analistas que usan Snort como IDS y Suricata como IPS por su mayor rendimiento en tráfico en tiempo real. Suricata, además, es multihilo (usa varios núcleos de CPU), mientras que Snort v2 no lo era.
🟣 Clave: Puedes cargar reglas de Snort en Suricata sin problema. Solo debes verificar que estén actualizadas y sean compatibles con el formato.
2. ¿Cómo se "salta" un IDS mal configurado?
Un atacante experto puede:
-
Fragmentar paquetes maliciosos en múltiples partes (evadiendo firmas).
-
Inyectar comentarios o caracteres nulos en código malicioso (SQLi con OR 1=1--%00).
-
Usar cifrado para ocultar payloads (HTTPS sin inspección).
🧨 Clave Purple: Todo IDS debe combinarse con inspección profunda de paquetes (DPI) y análisis contextual para ver más allá del contenido plano.
3. ¿Falsos positivos o sistema perezoso?
Una tasa muy baja de alertas NO es sinónimo de que todo esté bien. De hecho, puede ser señal de:
-
Reglas demasiado laxas.
-
Desactivación de firmas por error.
-
Tráfico mal redirigido (el sensor no ve nada útil).
🧪 Clave práctica: Programa ejercicios Red Team controlados (como escaneos con Nmap o payloads de Metasploit) para verificar si las alertas saltan. Así calibras el sistema.
4. Hay reglas IDS que detectan insultos y porno
En entornos empresariales, algunos IDS incluyen reglas para contenido inadecuado (por ejemplo, detectar cadenas como porn, xxx, hate speech). No es solo por moral, sino por evitar riesgo reputacional o cumplimiento normativo.
🎯 Ejemplo real: Empresas con políticas de DLP o protección legal pueden detectar y bloquear tráfico inapropiado que viole sus políticas internas.
5. IDS e IPS no son solo para red… ¡también para logs!
Un HIDS como OSSEC o Wazuh no analiza tráfico de red, sino registros del sistema: logs de eventos de Windows, autenticaciones SSH, cambios en archivos, ejecución de comandos sospechosos…
🧩 Consejo táctico: No descuides los HIDS. Son tu mejor escudo contra ataques internos y persistencia post-explotación.
6. La curva de aprendizaje del modelo de comportamiento puede ser tu perdición
Durante los primeros días o semanas de entrenamiento del IDS con detección basada en comportamiento (como UEBA o NTA), el sistema puede:
-
Marcar todo como sospechoso (alta tasa de falsos positivos).
-
O no marcar nada (modelo aún inmaduro).
⏳ Clave Purple Team: Actúa como jardinero del sistema: poda alertas inútiles, nutre las reglas válidas y documenta cada mejora. El aprendizaje supervisado acelera la maduración del sistema.
7. IPS mal configurado = caída total de red
Recuerda: el IPS está en línea, interceptando el tráfico. Si falla, puede cortar el acceso de toda la red, especialmente si se activa un modo de protección agresivo por error.
🛑 Consejo vital: Siempre configura un fail-open mode o establece un bypass en caso de fallo. Nunca pongas un IPS entre core switches sin pruebas previas.
8. Puedes usar IDS como honeypot pasivo
Una técnica avanzada consiste en usar IDS para detectar comportamiento malicioso en servicios falsos. Por ejemplo:
-
Crear un servidor FTP con banner falso.
-
Esperar que alguien lo escanee.
-
IDS detecta intento de conexión → alerta inmediata de posible intruso.
🧠 Clave táctica: Esto se combina con honeypots como Canary Tokens o Dionaea, y se convierte en una trampa altamente efectiva.
9. Análisis de tendencias: tu oráculo de amenazas
Si guardas logs de IDS durante semanas o meses, puedes visualizar:
-
Cuándo suelen atacar (hora y día).
-
Desde qué regiones.
-
Qué vectores prefieren (SQLi, RCE, brute force).
📊 Clave Purple Team: Usa herramientas como ELK Stack, Grafana o Splunk para graficar las tendencias de tus IDS y generar alertas predictivas.
10. Snort y Suricata detectan tráfico cifrado... hasta cierto punto
Ambos pueden ver:
-
El handshake inicial de TLS.
-
El certificado usado.
-
El SNI (nombre del dominio en texto claro).
Pero NO pueden ver el contenido de tráfico HTTPS sin interceptación TLS (con proxy como ZAP o SSLsplit).
🔓 Clave: Si quieres ver contenido HTTPS, necesitas un proxy intermedio o inspección SSL en un firewall avanzado.