Panorama#

Todo el bloque rojo de este manual se sostenía sobre una asimetría que la metodología de pentest (3.1) enunció como principio de cierre: el atacante necesita que funcionen todos los eslabones de su cadena; el defensor necesita romper uno solo. Esta Parte da vuelta el manual y se instala del lado del defensor, pero la asimetría no lo favorece tanto como parece. El atacante elige el momento, el vector y el eslabón por el que entra; el defensor tiene que cubrir la superficie entera, de forma continua, sin saber por dónde vendrá el golpe. Esa desventaja estructural es la que obliga a que la defensa deje de ser una colección de productos y se convierta en un programa: un conjunto de funciones especializadas que operan juntas, de manera activa y permanente, asumiendo que el compromiso o ya ocurrió o va a ocurrir.

Este capítulo abre P5 y es su marco, del mismo modo que 3.1 abre la explotación y el método OSINT (2.1) abre el reconocimiento. No enseña qué Event ID revisar ni qué regla escribir —eso lo hacen los capítulos siguientes— sino cómo se organiza una defensa para que esos eventos y esas reglas produzcan detecciones que valgan la pena. Tres ideas lo estructuran, y las tres son correcciones a errores frecuentes. La primera: la defensa es un programa de funciones que interoperan, no una suma de herramientas. La segunda: la detección madura se construye por comportamiento —las tácticas, técnicas y procedimientos del adversario— y no por el artefacto atómico (hash, IP) que caduca en horas; la pirámide del dolor de David Bianco es el mapa de esa transición. La tercera: la detección automatizada, por definición, solo ve lo que ya se sabía buscar, de modo que un programa serio la complementa con cacería proactiva dirigida por hipótesis, cuyo producto no es un informe sino una regla nueva.

flowchart TD
  INT["Intelligence\n(inteligencia de amenazas)"]
  INT --> DET["Detect\n(SOC · reglas · alertas)"]
  INT --> HUN["Hunt\n(cacería proactiva\nhypothesis-driven)"]
  INT --> RES["Respond\n(triaje · contención ·\nerradicación)"]
  INT --> VAL["Validate\n(¿los controles\nfuncionan?)"]
  DET --> RES
  HUN -->|"hallazgo confirmado"| RES
  HUN -->|"hunt-to-detection"| DET
  VAL -->|"brecha de cobertura"| DET
  RES -->|"lecciones aprendidas"| INT
  MC["Mission Control — tejido conectivo (recursos · métricas · crisis · alineación con el negocio)"]
  MC -.-> INT
  MC -.-> DET
  MC -.-> HUN
  MC -.-> RES
  MC -.-> VAL
  classDef n fill:#1e293b,stroke:#475569,color:#e2e8f0;
  classDef m fill:#334155,stroke:#64748b,color:#e2e8f0;
  class INT,DET,HUN,RES,VAL n;
  class MC m;

La defensa como programa: las seis funciones#

El modelo que ordena esta Parte es el de las seis funciones de ciberdefensa que Mandiant destila de su práctica de primera línea. Su punto de partida es una distinción que se pasa por alto con facilidad: diseñar controles no es lo mismo que operarlos. La arquitectura, la gobernanza y la gestión de riesgos deciden qué defensas existen; la ciberdefensa es el frente que las usa para «resistir activamente los ataques y minimizar el impacto de un compromiso». Ese frente se compone de seis piezas que no funcionan en serie sino que se alimentan entre sí de forma continua.

La inteligencia (Intelligence) es el pilar que orienta a las demás: el conocimiento anticipado sobre los actores de amenaza y sus TTP le dice a la detección qué buscar, a la cacería qué hipótesis plantear y a la respuesta qué priorizar. Sin ella, el resto opera a ciegas y gasta recursos escasos en el lugar equivocado —por eso su desarrollo propio es una Parte entera, P1—. La detección (Detect) alberga las operaciones tradicionales del SOC —Security Operations Center, el centro de operaciones de seguridad—, pero sumándoles analítica y contexto: no es recolectar registros, es convertirlos en alertas de valor. La respuesta (Respond) investiga, contiene, erradica y recupera, apoyándose en la automatización para reducir el impacto. La validación (Validate) comprueba de forma continua que los controles funcionen como fueron diseñados —el terreno del purple team y de la emulación adversaria, que se desarrolla en P6—. La cacería (Hunt) es la función proactiva que sale a buscar compromisos que las otras no vieron. Y el control de misión (Mission Control) es el tejido conectivo que administra recursos, métricas y crisis, y mantiene todo alineado con los objetivos del negocio.

El punto central es la interoperación. Un hallazgo de la cacería que se confirma empalma de inmediato con la respuesta; el conocimiento que la respuesta extrae de un incidente vuelve a la inteligencia; una brecha de cobertura que la validación descubre se traduce en una detección nueva. Un programa que trata estas funciones como casillas independientes —el SOC por un lado, el equipo forense por otro, la inteligencia como un feed que nadie lee— tiene todas las piezas y ninguna defensa. Los capítulos de P5 desarrollan estas funciones sobre el terreno: la telemetría que las alimenta (5.2), la respuesta a incidentes (5.4), el forense que sostiene la investigación (5.5) y las cacerías específicas contra las técnicas que el bloque rojo dejó planteadas (5.6 a 5.11).

De la firma al comportamiento: la pirámide del dolor#

La pregunta que define la madurez de una detección es contra qué se dispara. La respuesta ingenua —«contra los indicadores de compromiso conocidos»— es correcta pero incompleta, y el matiz que le falta es toda la diferencia. Un indicador de compromiso (Indicator of Compromise, IOC) es cualquier artefacto observable en un sistema o en la red que delata una intrusión: un hash de archivo malicioso, una dirección IP de mando y control, un dominio de phishing, una clave de registro de persistencia, un patrón de tráfico saliente. Su virtud es que se comparten y automatizan con facilidad —formatos como STIX, OpenIOC o reglas YARA existen justamente para eso— y ofrecen una vía rápida para detectar incluso amenazas nuevas antes de que haya firmas formales. Su defecto es que no todos los indicadores le cuestan lo mismo al atacante.

Ese matiz es la pirámide del dolor de David Bianco, y aunque la fuente que cataloga los IOC lo da por sabido sin nombrarlo, es el marco que ordena toda la detección moderna. La pirámide clasifica los indicadores por el «dolor» que le causa al adversario tener que cambiarlos cuando el defensor empieza a detectarlos:

  • Valores de hash (base de la pirámide): trivial. Un bit cambiado en el binario produce un hash nuevo; el atacante recompila y la firma queda inservible. Es la evasión que describe la evasión de AV/EDR (3.11).
  • Direcciones IP: fácil. Rotar la IP del servidor de C2 o usar una VPN cuesta minutos.
  • Nombres de dominio: algo más molesto, pero registrar un dominio nuevo sigue siendo barato y automatizable —de ahí los algoritmos de generación de dominios (DGA)—.
  • Artefactos de red y de host: molesto de verdad. Un User-Agent característico, la cadencia de un beacon, la ruta de un archivo temporal: cambiarlos obliga a tocar la herramienta.
  • Herramientas: doloroso. Reemplazar Mimikatz o Cobalt Strike por otra cosa exige reentrenar, reprobar, reinvertir.
  • Tácticas, técnicas y procedimientos (TTP) (cima de la pirámide): máximo dolor. Detectar el comportamiento —«un proceso de Office lanza PowerShell codificado», «una cuenta de servicio pide un TGS con cifrado RC4»— obliga al atacante a cambiar su forma de operar, no un dato. Y eso es caro, lento y a veces imposible.

La lección de detection engineering se sigue directamente: las mejores detecciones apuntan a comportamientos, no a artefactos. Como resume la propia fuente, un buen indicador es «difícil de evadir sin que el atacante cambie sus herramientas, tácticas o metodología». Por eso la defensa de Active Directory (4.9) no se construyó sobre hashes de Mimikatz sino sobre el Event ID 4769 con cifrado RC4 —la firma de una táctica, el Kerberoasting, que el atacante no puede evitar sin renunciar a la técnica—. La detección por IOC atómico no se descarta: es la primera línea, barata y rápida contra amenazas conocidas. Pero un programa que se queda ahí caza solo a los adversarios que no se molestaron en recompilar.

Sensores y telemetría: dónde y cómo se mira#

Para detectar comportamiento hace falta verlo, y verlo depende de dónde estén los sensores y de qué sepan reconocer. Dos ejes ordenan el despliegue. El primero es la ubicación: un sensor de red (network-based) observa el tráfico en tránsito desde un punto de agregación —un puerto SPAN, la DMZ, el núcleo, el hipervisor— y ve las conversaciones entre máquinas sin tocar los endpoints; un sensor de host (host-based) vive dentro del sistema operativo y ve lo que la máquina hace por dentro —procesos, llamadas, escrituras al registro— aunque el tráfico vaya cifrado. Ninguno basta solo: el sensor de red no ve lo que ocurre dentro de un host comprometido, y el de host no ve el panorama lateral de la red. La cobertura sale de combinarlos.

El segundo eje es qué acción toma el sensor. Un sistema de detección de intrusiones (Intrusion Detection System, IDS) es pasivo: observa y alerta. Un sistema de prevención (Intrusion Prevention System, IPS) es activo: se ubica en línea y bloquea. La diferencia no es cosmética —un IPS mal calibrado que bloquea un falso positivo interrumpe la operación legítima, mientras que un IDS ruidoso solo cansa al analista—, y la elección entre alertar y bloquear se decide por el costo del error en cada punto de la red.

El tercer contraste, el más importante para el resto de la Parte, es cómo decide el sensor qué es malicioso. La detección por firmas compara lo observado contra una base de patrones conocidos —las reglas de Snort contra WannaCry o DoublePulsar son el ejemplo canónico—: es precisa contra lo conocido y ciega ante lo nuevo. La detección por comportamiento o anomalía aprende primero una línea base de normalidad y alerta sobre las desviaciones. Su forma más desarrollada es el análisis de comportamiento de usuarios y entidades (User and Entity Behavior Analytics, UEBA), que memoriza qué servidores consume habitualmente cada usuario y desde qué geografía opera, para levantar una alerta cuando una cuenta legítima empieza a comportarse distinto —el patrón que delata credenciales robadas, un insider, o un movimiento lateral con identidad válida, como el Pass-the-Ticket que Microsoft ATA detecta sin una sola firma—. Toda esta telemetría —qué fuentes, qué Event IDs, cómo se correlacionan— es el objeto de 5.2; aquí basta fijar el principio: no se detecta lo que no se registra, y registrar todo indiscriminadamente ahoga al analista tanto como no registrar nada.

El ciclo de vida de la detección: ingeniería, no recolección#

La función de detección es donde la inteligencia se vuelve capacidad concreta, y su error más caro es confundirla con recolección. Ingerir todos los registros posibles «por si acaso» abruma al SIEM —Security Information and Event Management, la plataforma que centraliza y correlaciona los eventos—, dispara los costos de almacenamiento y, lejos de mejorar la detección, la entierra en ruido. El enfoque maduro invierte el orden: las TTP del adversario deciden qué se ingiere. Se parte de la técnica que se quiere ver, se identifican las fuentes de datos que la hacen visible, y solo esas se capturan con prioridad. La regla, en palabras de la fuente, es contundente: «por más novedosa, impresionante o compleja que sea una detección, si no aborda las TTP relevantes, es inútil».

Sobre esa base, la ingeniería de detección (detection engineering) opera como un ciclo continuo, no como un proyecto que termina. El adversario evoluciona sus tácticas para evadir; el ingeniero de detección investiga la técnica, desarrolla la regla, la prueba, la afina y vuelve a empezar. Dos disciplinas sostienen la fidelidad de ese ciclo. La primera es el aseguramiento de calidad: «una detección vale lo que vale su validación; no toda alerta es un ataque real», y sin pruebas rigurosas el pipeline se llena de falsos positivos que producen fatiga de alertas —el estado en que el analista, saturado, empieza a ignorar avisos, y el que sí importaba pasa inadvertido—. Por eso las métricas del SOC deben premiar la calidad de las alertas sobre metas de velocidad arbitrarias. La segunda es la detección como código (detection as code): tratar la lógica de detección como artefactos versionados y testeables —igual que el software—, de modo que cada regla se pueda revisar, probar contra casos conocidos y validar de forma continua a medida que cambian los modelos de datos y las dependencias de las que depende. El cierre del ciclo es el triaje: el proceso analítico que separa lo benigno de la amenaza real y prioriza, apoyado cuando conviene en plataformas SOARSecurity Orchestration, Automation and Response— que enriquecen el contexto de cada alerta y aceleran la contención.

La cacería: cuando la detección automatizada no alcanza#

La detección automatizada tiene un límite estructural: solo encuentra lo que alguien ya sabía buscar. Toda regla codifica un patrón conocido, de modo que el adversario que usa una técnica novedosa —o una conocida de una forma que ninguna regla previó— pasa por debajo del radar. La función de cacería (threat hunting) existe para cubrir ese hueco, y su punto de partida es el mismo assume breach que gobernaba al atacante en 3.1, ahora en clave defensiva: la cacería asume metódicamente que la red ya está comprometida y sale a buscar la evidencia, en vez de esperar a que salte una alerta.

Lo que distingue una cacería seria de «revisar logs a ver qué aparece» es la hipótesis. La cacería madura es hypothesis-driven: parte de una suposición estructurada y sustentada en inteligencia —«si el grupo que ataca a nuestro sector usa esta técnica, en nuestro entorno dejaría este rastro»—, mapea las tácticas del adversario contra los activos críticos (crown jewels) construyendo árboles de ataque, y recolecta solo la evidencia necesaria para confirmar o refutar esa hipótesis. Esta cacería estructurada, guiada por TTP y por el marco MITRE ATT&CK, supera con holgura a la no estructurada, que persigue anomalías estadísticas sueltas sin objetivo táctico y consume recursos sin garantizar hallazgos. El árbol de ataque conceptual que ilustra el método —un adversario que compromete un sistema, vuelca credenciales de LSASS, escala privilegios, desengancha el EDR en modo usuario y roba un token de administrador de dominio— es exactamente la cadena que el bloque rojo desarrolló paso a paso, ahora leída al revés para decidir dónde buscar.

Pero el mayor valor de la cacería no es el hallazgo puntual. Si una misión confirma un compromiso, empalma de inmediato con la respuesta a incidentes; ese es el resultado esperado. El valor estratégico está en el traspaso a detección (hunt-to-detection handoff): cada técnica maliciosa que una cacería descubre debe convertirse en una regla de detección permanente. Una cacería cuyo único producto es un informe archivado no escala —el mismo esfuerzo humano habría que repetirlo la próxima vez—; una cacería cuyo entregable obligatorio es una regla nueva de alta fidelidad (un YARA, un Sigma, un pull request al repositorio del SIEM) convierte el análisis manual de hoy en la inmunidad automática de mañana, y reduce el tiempo que el atacante permanece sin ser visto. Ese lazo —cacería que alimenta detección que libera a la cacería para buscar lo siguiente— es la forma en que un programa de defensa aprende.

El mapa de P5 y la lente púrpura invertida#

Este capítulo cumple, para el bloque azul, la función que la subsección de detección cumplía en cada capítulo rojo: fija el marco desde el cual se lee todo lo que sigue. Y su relación con el resto del manual es literalmente de espejo. Cada técnica ofensiva que el bloque rojo desarrolló dejó tendido un wikilink hacia su contraparte defensiva en P5, y esos enlaces son la agenda de esta Parte. La telemetría que hace visible cualquier ataque se sistematiza en 5.2; las amenazas de identidad y correo —el espejo del OSINT de identidad y del Kerberos ofensivo— en 5.3; el ciclo de respuesta a incidentes en 5.4; el forense de memoria que destapa lo fileless y los rootkits en 5.5. Y las cacerías dirigidas cierran cada hilo que el rojo abrió: el movimiento lateral (5.6, espejo del PtH/PtT de 4.8 y del pivoting de 3.13), la caza de C2 (5.7, espejo de 3.10 y 3.12), el análisis de malware y la detección de evasión (5.8, espejo de 3.11), la exfiltración y el estegoanálisis (5.9, espejo de 3.12), la persistencia en Linux (5.10, espejo de 3.14) y la detección en runtime de contenedores (5.11, espejo de 3.16).

Hay una simetría más profunda con las otras dos metodologías-marco del manual. La 3.1 enseñó que el atacante enumera de forma exhaustiva y cíclica porque «no se puede atacar lo que se pasó por alto»; el 2.1 enseñó que «la información no es inteligencia hasta que tiene contexto». La defensa comparte ambos principios exactos, invertidos: no se puede detectar lo que no se registra ni se caza lo que no se hipotetiza, y una alerta no es una detección hasta que el triaje le da contexto. El ciclo de inteligencia del analista blue —recolectar, analizar con niveles de confianza, producir— es el mismo que el del investigador OSINT, apuntado hacia adentro en lugar de hacia afuera. Esa es la lente púrpura que el manual viene tendiendo desde el principio, ahora completada: el atacante y el defensor recorren el mismo terreno con el mismo método, y quien entiende una cara entiende la otra. El resto de P5 es la aplicación de este marco, técnica por técnica, sobre la telemetría real.

Referencias#

  • blue-dfir/defenders-advantage/cap-03What is Cyber Defense?: el modelo de las seis funciones (Intelligence, Detect, Respond, Validate, Hunt, Mission Control), la distinción entre diseñar y operar controles, y la interoperación como núcleo del programa.
  • blue-dfir/defenders-advantage/cap-05Detect: el ciclo de vida de la detección, la ingeniería de detección dirigida por TTP, el SIEM guiado por inteligencia frente a la recolección indiscriminada, la detection as code y la fidelidad frente a la fatiga de alertas.
  • blue-dfir/defenders-advantage/cap-08Hunt: la cacería proactiva hypothesis-driven bajo assume breach, estructurada (TTP/ATT&CK + árboles de ataque sobre crown jewels) frente a no estructurada, y el traspaso hunt-to-detection como cierre del ciclo.
  • blue-dfir/cti-thomas/cap-02Indicators of Compromise: la definición y los tipos de IOC, la estandarización para la automatización (STIX/OpenIOC/YARA) y la tesis de que los mejores indicadores apuntan a comportamientos difíciles de evadir sin cambiar la metodología.
  • blue-dfir/attack-defense/cap-11Active Sensors: sensores de red frente a host, IDS frente a IPS, detección por firmas frente a comportamiento/anomalía, UEBA y el manejo de falsos positivos y negativos.
  • David J. Bianco, The Pyramid of Pain (2013), como marco canónico de la jerarquía de indicadores por costo de evasión —enriquecimiento nativo, ausente de la fuente pero implícito en su tesis—.
  • MITRE ATT&CK, el marco de TTP que estructura tanto la ingeniería de detección como la planificación de las cacerías de P5.