Skip to main content

Mejora la evaluación de riesgos con las puntuaciones EPSS en Snyk

Escrito por
feature safe containers

22 de mayo de 2023

0 minutos de lectura

La cantidad y complejidad de las vulnerabilidades de software crece continuamente. La capacidad de los equipos de desarrollo y seguridad para evaluar el nivel de amenaza que representa una vulnerabilidad y priorizar las correcciones en consecuencia depende en gran medida de que tengan acceso a todo el contexto posible sobre dicha vulnerabilidad.

Snyk siempre ha priorizado brindar a nuestros usuarios la inteligencia de seguridad que necesitan no solo para identificar posibles vulnerabilidades en sus aplicaciones, sino también para priorizar su corrección con el contexto más amplio posible. Por eso nos complace anunciar que agregamos EPSS (Exploit Prediction Scoring System) a la inteligencia de seguridad de Snyk para las vulnerabilidades de Snyk Open Source y Snyk Container.

A partir de hoy, la información del modelo EPSS más reciente (EPSS v3) está disponible en Snyk Vulnerability Database y, a lo largo del año, estará disponible gradualmente en otros flujos de trabajo de Snyk, como la interfaz de Snyk App, la API y los informes.

¿Qué es EPSS?

El EPSS SIG (grupo de interés especial), respaldado por FIRST, se formó oficialmente en 2020 con el objetivo de “ayudar a los defensores de redes a priorizar mejor las tareas de corrección de vulnerabilidades”. El problema que identificó el grupo de investigadores y profesionales voluntarios que gestiona el proyecto es que los estándares actuales del sector, como CVSS, pueden ser útiles para medir la gravedad de una vulnerabilidad, pero tienen limitaciones para evaluar la amenaza real que representa. 

¿Qué hace la puntuación EPSS?

EPSS estima la probabilidad de que se explote una vulnerabilidad y le asigna una puntuación de probabilidad de entre 0 % y 100 %. Cuanto más alta sea la puntuación, más probable será que la vulnerabilidad se explote en entornos reales durante los próximos 30 días. EPSS también contextualiza esa puntuación mediante un percentil, que representa la proporción de vulnerabilidades con una puntuación igual o inferior y, por lo tanto, también indica el nivel de amenaza que representa la vulnerabilidad.

Las puntuaciones y los percentiles de EPSS se calculan diariamente para todos los CVE publicados. Actualmente, las puntuaciones se pueden descargar como un archivo CSV mediante una solicitud HTTP directa desde la página de datos y estadísticas de EPSS. También hay una API para acceder a los datos.

¿Cómo se compara EPSS con CVSS?

Common Vulnerability Scoring System (CVSS) es un marco diseñado para describir las características de una vulnerabilidad y generar una puntuación numérica que refleje su gravedad (baja, media, alta o crítica).

Ambos marcos buscan ayudar a las organizaciones a enfrentar el mismo desafío: la priorización. Además, son marcos abiertos, por lo que sus datos están disponibles públicamente y sin costo. La diferencia clave entre ellos radica en su enfoque. Comprenderla es importante para determinar si son excluyentes entre sí. 

CVSS busca ofrecer una medición estandarizada de la gravedad de una vulnerabilidad a partir de tres grupos de métricas: base, temporal y ambiental. Estas métricas deben calcularse de forma secuencial y conjunta para generar una puntuación de 1 a 10, que determina el nivel de gravedad asignado a una vulnerabilidad. Sin embargo, debido a la complejidad de incorporar al modelo las métricas temporales y ambientales, la mayoría de las organizaciones se conforma con usar la puntuación base. Como señala la documentación de CVSS, esta no basta para evaluar el riesgo real: 

La puntuación base de CVSS debe complementarse con un análisis contextual del entorno y con atributos que pueden cambiar con el tiempo, aprovechando las métricas temporales y ambientales de CVSS. Lo más adecuado es usar un sistema integral de evaluación de riesgos que tenga en cuenta más factores que la puntuación base de CVSS. Estos sistemas suelen considerar también factores que quedan fuera del alcance de CVSS, como la exposición y las amenazas.

Esta es la principal razón por la que muchos analistas y profesionales de seguridad toman las puntuaciones CVSS con cautela. Entienden que deben usarse junto con contexto e información adicionales para comprender mejor el nivel de riesgo que representa una vulnerabilidad y priorizar las correcciones.

EPSS, como se explicó anteriormente, se diseñó para resolver esta limitación del marco CVSS. Se basa en un modelo de aprendizaje automático basado en datos que combina información actual sobre amenazas de la base de datos CVE con datos de exploits reales obtenidos de varias fuentes para predecir la probabilidad de que se materialice una amenaza.


CVSS

EPSS

Responsable

FIRST

FIRST

Rango de puntuación

0-10

0%-100%

Significado de la puntuación

Gravedad de una vulnerabilidad

Probabilidad de que se explote una vulnerabilidad en los próximos 30 días

Fuentes de datos

Las métricas base, temporales y ambientales se combinan para calcular la puntuación

Diversas fuentes se usan para entrenar un modelo de aprendizaje automático, incluidos datos históricos de vulnerabilidades y datos diarios de exploits 

Actualizaciones

Versión más reciente: CVSS 3.1 (publicada en junio de 2019)

Las puntuaciones se actualizan a diario mediante un proceso basado en aprendizaje automático. El modelo se actualiza periódicamente.

¿Cómo funciona EPSS?

EPSS usa un modelo de aprendizaje automático para generar la puntuación. Para entrenarlo, EPSS recopila datos de varias fuentes. Esto incluye información sobre vulnerabilidades conocidas, exploits asociados y otros factores que podrían influir en la posibilidad de explotación. Entre las fuentes de datos están la lista MITRE CVE, NVD (National Vulnerability Database) y varios canales de inteligencia de amenazas, como Metasploit y ExploitDB.

Luego, estos datos se combinan para entrenar el modelo de predicción de EPSS y garantizar que pueda predecir correctamente la probabilidad de explotación de vulnerabilidades nuevas que no se habían detectado antes. A medida que se dispone de nuevos datos sobre vulnerabilidades y exploits, el modelo se actualiza para mantener su precisión y relevancia. 

La primera versión del modelo se publicó en 2021 y la actualización más reciente de EPSS se lanzó en marzo de 2023 (EPSS v3 o v2023.03.01). El modelo más reciente ofrece resultados de predicción significativamente mejores y una eficiencia optimizada. 

Infografía que compara CVSS v3.x y EPSS v1–v3 según los umbrales de vulnerabilidad, el esfuerzo, la cobertura, la eficiencia y las CVE explotadas.
Fuente: Mejorar la priorización de vulnerabilidades: predicciones de explotación basadas en datos con insights impulsados por la comunidad

Usar EPSS con Snyk

Como se mencionó anteriormente, se agregaron puntuaciones EPSS a las vulnerabilidades de código abierto que aparecen en Snyk Intel Vulnerability Database. Al consultar un CVE específico, la puntuación EPSS aparece en el cuadro Threat Intelligence, a la derecha de la página:

Panel de puntuación de seguridad que muestra una calificación crítica de Snyk CVSS de 9.9 y una puntuación de inteligencia de amenazas EPSS de 0.04%.

Como se ve en el ejemplo anterior, además de mostrar la principal medida de EPSS, la probabilidad (0.04% en este caso), Snyk también muestra el percentil (percentil 6), que representa la probabilidad en relación con todas las demás puntuaciones. 

Si desarrollas aplicaciones basadas en Snyk CLI, también puedes consultar las puntuaciones EPSS al ver las vulnerabilidades en un archivo JSON.

"epssDetails": {
        "percentile": "0.37972",
        "probability": "0.00092",
        "modelVersion": "v2023.03.01"
      }

Hacia un modelo más integral de evaluación de riesgos

EPSS estima la probabilidad de que se explote una vulnerabilidad. Pero, además de entender qué es EPSS, también es importante saber qué no es. 

EPSS no tiene en cuenta factores ambientales adicionales ni estima el impacto de una vulnerabilidad si se explota. Por eso, como indica el propio EPSS SIG, “no es ni debe considerarse una visión completa del riesgo”. También vale la pena señalar que, aunque el EPSS SIG ha hecho un trabajo admirable al documentar el proyecto, el modelo en sí no es completamente transparente, lo que dificulta evaluarlo en profundidad. Aun así, EPSS puede y debe ser uno de los factores de riesgo que se consideren al evaluar el riesgo que representa una vulnerabilidad y priorizarla. Por eso decidimos incorporarlo gradualmente a nuestros datos de vulnerabilidades. 

De cara al futuro, Snyk está trabajando en un nuevo modelo de evaluación de riesgos, mucho más detallado e integral. Este modelo incluirá tanto CVSS como EPSS, además de una larga lista de factores de riesgo contextuales adicionales. En conjunto, estos factores ayudarán a determinar la probabilidad de que se explote una vulnerabilidad y el impacto en caso de que ocurra, para ofrecer un enfoque más integral y basado en riesgos para la priorización y la gestión de problemas. 

¡Mantente al tanto de las novedades!

A los desarrolladores les encanta. Los equipos de seguridad confían en él.

Las herramientas de Snyk, diseñadas primero para desarrolladores, ofrecen seguridad integrada y automatizada que satisface tus necesidades de gobernanza y cumplimiento.