IntermediovulnerabilidadesEPSSmachine-learningpriorizaciónmétricas

EPSS: Prediciendo Qué Vulnerabilidades Se Explotarán

EPSS (Exploit Prediction Scoring System) utiliza machine learning para predecir la probabilidad de explotación de cada CVE en los próximos 30 días. Solo el 5% de las vulnerabilidades publicadas se explotan: EPSS te dice cuáles serán.

MalwareIntel Research··11 min lectura

El problema de la priorización: demasiadas vulnerabilidades, pocos recursos

Cada año se publican más de 25.000 nuevas CVEs en el National Vulnerability Database (NVD). En 2024, la cifra superó las 28.000. Para cualquier equipo de seguridad, la pregunta no es si hay vulnerabilidades que parchear, sino cuáles parchear primero. CVSS lleva años como estándar para medir la severidad, pero tiene un defecto fundamental: no distingue entre una vulnerabilidad teóricamente grave y una que los atacantes están explotando activamente.

Aquí es donde entra EPSS, el Exploit Prediction Scoring System. Desarrollado por FIRST.org (el mismo organismo que mantiene CVSS), EPSS utiliza machine learning para responder una pregunta distinta y mucho más práctica: ¿cuál es la probabilidad de que esta vulnerabilidad sea explotada en los próximos 30 días?

La diferencia es profunda. CVSS te dice qué tan malo podría ser un incendio. EPSS te dice la probabilidad de que ese incendio realmente ocurra.

Qué es EPSS y cómo funciona

EPSS es un modelo de machine learning que asigna a cada CVE publicada un score de probabilidad entre 0.0 y 1.0, donde 0.0 significa que la explotación es extremadamente improbable y 1.0 que es prácticamente segura en los próximos 30 días. Además del score absoluto, EPSS proporciona un percentil que indica la posición relativa de esa CVE frente a todas las demás.

Por ejemplo, una CVE con EPSS 0.96 tiene un 96% de probabilidad estimada de ser explotada en los próximos 30 días. Una CVE con EPSS 0.003 tiene un 0.3% de probabilidad, lo que en la práctica significa que los atacantes no la están utilizando ni planean hacerlo a corto plazo.

El modelo de machine learning

El modelo EPSS se entrena con datos reales de explotación observada, no con opiniones de expertos ni estimaciones teóricas. Las fuentes de entrenamiento incluyen:

  1. Datos de explotación activa. Información de sensores de red, honeypots y proveedores de threat intelligence que reportan qué CVEs se están explotando en el mundo real.
  2. Disponibilidad de exploits públicos. Existencia de código de exploit en repositorios como Exploit-DB, Metasploit, GitHub y otros. La disponibilidad de un exploit funcional es uno de los predictores más fuertes.
  3. Características de la vulnerabilidad. Tipo de vulnerabilidad (CWE), vector de ataque (red, local, adyacente), complejidad de explotación, requisitos de privilegios e interacción del usuario.
  4. Menciones en redes sociales y foros. Actividad en Twitter/X, Reddit, foros de seguridad y la dark web. Cuando los atacantes empiezan a discutir una CVE, la probabilidad de explotación sube.
  5. Referencias y publicaciones. Avisos de vendedores, boletines CERT, write-ups técnicos y PoC (Proof of Concept) publicados.
  6. Edad de la vulnerabilidad. Las CVEs recientes con exploits disponibles tienen mayor probabilidad de explotación activa que vulnerabilidades antiguas ya parcheadas por la mayoría de organizaciones.

El modelo combina todas estas señales para producir una estimación probabilística calibrada. Esto significa que si EPSS dice que un grupo de CVEs tiene un 10% de probabilidad, aproximadamente el 10% de esas CVEs se observa en explotación real. Esta calibración es fundamental para la confianza en el sistema.

EPSS v3: el salto de 2023

En marzo de 2023, FIRST.org publicó EPSS v3, que supuso una mejora del 82% en la capacidad predictiva respecto a la versión anterior. Los cambios principales fueron:

  1. Mayor transparencia. FIRST.org publicó métricas de precisión y recall contra datos de test retenidos, permitiendo a la comunidad verificar la calidad del modelo.
  2. Más features. El modelo v3 incorpora más de 1.100 variables (features) extraídas de múltiples fuentes de datos.
  3. Mejor calibración. Los scores v3 están mejor calibrados, lo que significa que reflejan probabilidades reales con mayor fidelidad.
  4. Actualización diaria. El modelo recalcula todos los scores cada día, incorporando nueva información de explotación observada en las últimas 24 horas.

CVSS vs EPSS: severidad no es probabilidad

La confusión más común en gestión de vulnerabilidades es tratar el score CVSS como un indicador de riesgo. CVSS mide severidad técnica intrínseca: el daño potencial si la vulnerabilidad se explota con éxito. Pero no dice nada sobre la probabilidad de que eso ocurra.

Los datos lo demuestran de forma contundente:

CVEs con CVSS alto y EPSS bajo (nunca se explotan)

Un ejemplo frecuente: una vulnerabilidad de ejecución remota de código (RCE) en un componente de nicho recibe un CVSS 9.8 (crítico). Sin embargo, el componente tiene una base de instalación minúscula, no existe exploit público, y los atacantes no tienen incentivos para desarrollar uno. Su EPSS puede ser tan bajo como 0.008 (0.8%), lo que indica que la probabilidad real de explotación es prácticamente nula.

CVE-2024-0646, una vulnerabilidad en el kernel de Linux con CVSS 7.0, tenía un EPSS de apenas 0.04%. La explotación requería acceso local y condiciones muy específicas, lo que la hacía poco atractiva para ataques a escala.

CVEs con CVSS moderado y EPSS alto (explotación activa)

En el otro extremo, una vulnerabilidad de escalada de privilegios con CVSS 6.5 (medio) puede tener un EPSS de 0.95 si existe un exploit público fiable, se ha integrado en frameworks de ataque como Metasploit, y los atacantes la están usando activamente como parte de cadenas de compromiso. Un CVSS medio no significa bajo riesgo si los atacantes la explotan a diario.

Las cifras globales

Según datos de FIRST.org (octubre 2023), de las 139.473 CVEs con score CVSS 3.x publicadas en NVD, solo 3.852 (un 2,7%) mostraron actividad de explotación real en un periodo de 30 días. Esto significa que el 97,3% de las vulnerabilidades con score CVSS asignado no se explotaron en ese periodo.

El dato más revelador: solo el 2,3% de las CVEs con CVSS 7.0 o superior fueron observadas en un intento de explotación. La inmensa mayoría fueron falsos positivos desde el punto de vista de priorización. Las organizaciones que priorizan exclusivamente por CVSS dedican recursos a parchear vulnerabilidades que ningún atacante está utilizando.

La API de EPSS: integración práctica

EPSS es completamente gratuito y abierto. La API pública no requiere autenticación y permite consultas en varios formatos.

Endpoint base

GET https://api.first.org/data/v1/epss

Consultar una CVE específica

curl "https://api.first.org/data/v1/epss?cve=CVE-2024-3400"

Respuesta:

{
  "status": "OK",
  "status-code": 200,
  "version": "1.0",
  "total": 1,
  "data": [
    {
      "cve": "CVE-2024-3400",
      "epss": "0.95432",
      "percentile": "0.99912",
      "date": "2026-05-20"
    }
  ]
}

Consulta en lote

curl "https://api.first.org/data/v1/epss?cve=CVE-2024-3400,CVE-2024-0646,CVE-2021-44228"

Scores históricos

curl "https://api.first.org/data/v1/epss?cve=CVE-2021-44228&date=2021-12-15"

Esto permite analizar cómo evolucionó el score EPSS de Log4Shell en los días posteriores a su descubrimiento. El score subió drásticamente cuando se publicaron exploits y se detectó explotación masiva.

Datos en CSV (descarga masiva)

FIRST.org publica diariamente un archivo CSV con los scores de todas las CVEs, disponible para descarga directa. Esto facilita la integración en pipelines de análisis de datos, dashboards internos y herramientas de gestión de vulnerabilidades.

Combinando EPSS con KEV y CVSS: la triple defensa

La estrategia de priorización más efectiva no se basa en un solo sistema, sino en la combinación de tres fuentes complementarias:

1. CISA KEV (Known Exploited Vulnerabilities)

El catálogo KEV de CISA lista vulnerabilidades con explotación confirmada y verificada. Si una CVE está en KEV, tiene prioridad máxima. No hay debate: se está explotando y CISA lo ha verificado. El catálogo KEV contenía más de 1.100 CVEs a finales de 2025.

2. EPSS (probabilidad de explotación)

Para las miles de CVEs que no están en KEV pero tienen scores EPSS elevados, EPSS identifica las que probablemente serán explotadas pronto. Un umbral de EPSS >= 0.10 (10%) captura la gran mayoría de CVEs que terminan siendo explotadas, mientras descarta el 96% que no lo son.

3. CVSS (severidad técnica)

CVSS sigue siendo útil para evaluar el impacto potencial si la explotación ocurre. Una CVE con EPSS alto y CVSS alto es la combinación más peligrosa: alta probabilidad de explotación con alto impacto.

Matriz de priorización práctica

┌─────────────────────────────────────────────────────┐
│            EPSS Alto (>= 0.10)  │ EPSS Bajo (< 0.10)│
├─────────────────────────────────┼────────────────────┤
│ CVSS Alto   │ PRIORIDAD 1       │ PRIORIDAD 3        │
│ (>= 7.0)    │ Parchear ahora    │ Planificar parche  │
├─────────────────────────────────┼────────────────────┤
│ CVSS Bajo   │ PRIORIDAD 2       │ PRIORIDAD 4        │
│ (< 7.0)     │ Evaluar contexto  │ Monitorizar        │
├─────────────────────────────────┴────────────────────┤
│ En CISA KEV │ PRIORIDAD 0: Parchear inmediatamente   │
└──────────────────────────────────────────────────────┘

Esta matriz permite que un equipo de seguridad con recursos limitados concentre su esfuerzo en las vulnerabilidades que realmente importan, en lugar de perseguir miles de CVEs teóricamente graves pero prácticamente irrelevantes.

Casos de estudio: EPSS en acción

Log4Shell (CVE-2021-44228)

Cuando Log4Shell se reveló en diciembre de 2021, su score EPSS se disparó inmediatamente. CVSS 10.0, EPSS cercano a 1.0. En este caso, ambos sistemas coincidían: severidad máxima y probabilidad de explotación máxima. La concordancia total entre CVSS y EPSS es la señal más clara de que una vulnerabilidad requiere atención inmediata.

CVE-2024-3400 (Palo Alto PAN-OS)

Esta vulnerabilidad de inyección de comandos en Palo Alto PAN-OS recibió un CVSS 10.0 y rápidamente alcanzó un EPSS superior a 0.95. Los atacantes la explotaron antes de que existiera un parche oficial, convirtiéndola en un zero-day activo. EPSS detectó la actividad de explotación en tiempo casi real a través de sus señales de amenaza.

El 95% invisible

Mientras los medios se concentran en las vulnerabilidades de alto perfil, la inmensa mayoría de CVEs publicadas cada año pasan desapercibidas para los atacantes. EPSS permite identificar esa masa silenciosa y no desperdiciar recursos en ella. Si tu organización tiene 500 CVEs pendientes de parcheo y el 95% tiene EPSS inferior a 0.01, puedes concentrar el esfuerzo en las 25 que realmente importan.

Limitaciones de EPSS

Como todo modelo predictivo, EPSS tiene limitaciones que conviene conocer:

  1. No predice zero-days. EPSS opera sobre CVEs publicadas. No puede predecir la explotación de vulnerabilidades que aún no tienen CVE asignado.
  2. Sesgo de observación. EPSS se entrena con explotación observada, lo que significa que ataques altamente dirigidos (APT) que afectan a pocas organizaciones pueden no registrarse como explotación generalizada.
  3. Ventana de 30 días. El score predice explotación en los próximos 30 días. Una CVE con EPSS bajo hoy puede cambiar drásticamente si mañana se publica un exploit funcional.
  4. No incorpora contexto organizacional. EPSS no sabe qué software tienes instalado ni lo crítico que es para tu negocio. Necesitas combinar EPSS con tu inventario de activos y criticidad de negocio.
  5. Dependencia de datos de explotación. La calidad del modelo depende de la cobertura y calidad de las fuentes de datos de explotación. Regiones o sectores con menor visibilidad pueden estar subrepresentados.

Implementación práctica en tu organización

Paso 1: Integrar la API

Conecta la API de EPSS a tu escáner de vulnerabilidades o plataforma de gestión. Herramientas como Tenable, Qualys, Rapid7 y muchos escáneres open source ya integran EPSS directamente.

Paso 2: Definir umbrales

Establece umbrales de actuación basados en EPSS. Un punto de partida razonable:

  • EPSS >= 0.70: Parchear en 24 a 48 horas.
  • EPSS >= 0.10: Parchear en la próxima ventana de mantenimiento.
  • EPSS >= 0.01: Incluir en el ciclo regular de parcheo.
  • EPSS < 0.01: Monitorizar, no priorizar activamente.

Paso 3: Combinar con contexto de activos

Multiplica la señal EPSS por la criticidad de los activos afectados. Una CVE con EPSS 0.15 en un servidor de base de datos que contiene PII de clientes tiene prioridad muy diferente a la misma CVE en un servidor de desarrollo interno sin datos sensibles.

Paso 4: Monitorizar tendencias

Los scores EPSS cambian diariamente. Configura alertas para CVEs que salten por encima de tus umbrales. Un incremento repentino en el EPSS de una CVE que afecta tu infraestructura es una señal temprana de que los atacantes están preparando o ejecutando ataques.

El futuro de la priorización basada en datos

EPSS representa un cambio fundamental en la gestión de vulnerabilidades: pasar de "parchear todo lo que CVSS dice que es crítico" a "parchear lo que los datos indican que se explotará". Este enfoque basado en evidencia reduce la fatiga de parcheo, optimiza los recursos limitados de los equipos de seguridad y mejora la postura de seguridad real de la organización.

La evolución natural es combinar EPSS con otros frameworks de priorización como VPR de Tenable y SSVC de CISA, que incorporan capas adicionales de contexto. El objetivo final es un sistema de priorización que responda no solo a "¿qué probabilidad hay de que se explote?" sino también a "¿qué impacto tendría en nuestra organización específica?".

En un mundo donde se publican más de 70 CVEs nuevas al día, la capacidad de distinguir las que realmente importan de las que son ruido estadístico no es un lujo. Es una necesidad operativa.

Recursos y herramientas

Preguntas frecuentes

Artículos relacionados

Este contenido tiene fines exclusivamente educativos y de investigación en ciberseguridad defensiva. No se proporcionan binarios maliciosos ni payloads ejecutables. El uso indebido de esta información es responsabilidad exclusiva del usuario. Leer disclaimer completo.