Skip to main content

Presentamos las capacidades de priorización de Snyk, diseñadas para desarrolladores

Escrito por
Prioritisation header feature

22 de julio de 2020

0 minutos de lectura

Nos entusiasma presentar las capacidades de priorización de Snyk, diseñadas para desarrolladores, que ayudan a los equipos de desarrollo y seguridad a priorizar de forma más eficaz las correcciones de vulnerabilidades de seguridad en sus dependencias de código abierto y contenedores.

Hoy en día, las organizaciones se ven abrumadas por la cantidad cada vez mayor de vulnerabilidades. Como no pueden corregir todos los problemas de inmediato, deben establecer prioridades. Una priorización eficaz ayuda a las organizaciones a concentrarse en las vulnerabilidades que representan el mayor riesgo, maximizar el valor del tiempo y el esfuerzo invertidos y fortalecer rápidamente la postura de seguridad general de la organización.

Pero priorizar de forma eficaz es todo un reto.

Las vulnerabilidades no son todas iguales, y las diferencias en el riesgo que representan dependen de una larga lista de factores objetivos y subjetivos. Para priorizar bien, se necesita un contexto profundo.Por ejemplo, saber que existe un exploit maduro o determinar si la aplicación realmente llama a la función vulnerable permite evaluar el riesgo con más precisión. Incluso el tiempo influye: el riesgo disminuye a medida que pasa el tiempo desde la fecha de publicación de una nueva vulnerabilidad.

Con este anuncio, Snyk ofrece un conjunto integral de herramientas de priorización fáciles de usar para desarrolladores, que permite a las organizaciones priorizar de forma eficaz las correcciones de vulnerabilidades en sus dependencias de código abierto y contenedores. Incluye priorización instantánea, contexto profundo de las aplicaciones y gobernanza a escala.

Acelera la clasificación de problemas con la priorización instantánea

El método más común para priorizar las correcciones hoy en día es usar CVSS. Si bien es un buen punto de partida, este enfoque también tiene algunas limitaciones. El estándar es difícil de interpretar y, en ocasiones, da lugar a puntuaciones engañosas. Incluso después de filtrar por gravedad, las organizaciones siguen teniendo una larga lista de vulnerabilidades que deben priorizar. Más fundamentalmente, la gravedad no equivale al riesgo, ni al nivel real de exposición a ese riesgo en un proyecto determinado. Para priorizar bien, las organizaciones necesitan primero una forma fácil y rápida de comprender integralmente el riesgo que representan las vulnerabilidades.

Puntuación de prioridad

Nos complace anunciar la nueva puntuación de prioridad de Snyk: un sistema avanzado de puntuación integrado que ayuda a los desarrolladores a priorizar los problemas de forma rápida y sencilla.

Para calcular la puntuación de prioridad de Snyk, se utiliza un algoritmo patentado que procesa una gran variedad de factores, como la puntuación CVSS, la disponibilidad de una corrección, los exploits conocidos, qué tan reciente es la vulnerabilidad y si es reachable (más información sobre reachability a continuación). La puntuación, que va de 1 a 1000, se calcula tanto para las vulnerabilidades de seguridad como para los problemas de licencias, y se puede usar de varias formas en la interfaz de usuario de Snyk y a través de la API.

En la página Projects de Snyk, la puntuación aparece en la esquina superior derecha de cada tarjeta de problema. Se agregó una nueva opción para filtrar las vulnerabilidades de los proyectos según su puntuación.

Panel de vulnerabilidades ordenado por puntuación de prioridad, con problemas de gravedad alta y una descripción emergente que explica una puntuación de 899.

En la página Reports | Issues de la interfaz de usuario, los problemas se ordenan de forma predeterminada para mostrar primero las vulnerabilidades con la puntuación más alta.

Tabla de problemas de Snyk Reports ordenada por puntuación, que destaca vulnerabilidades de gravedad alta con puntuaciones de 899, 786 y 756.

Para revisar con más facilidad una gran cantidad de vulnerabilidades en tus informes, puedes usar el nuevo filtro Priority Score.

Panel de problemas que muestra el filtrado por puntaje de prioridad, con casillas para el tipo de problema, la madurez del exploit, el estado, la posibilidad de corrección y reachability.

Priority Score está disponible en todos los planes de Snyk; los informes y la API son compatibles con los planes Standard y superiores.

Madurez del exploit

La función Exploit Maturity de Snyk —ahora también compatible con Snyk Container—ofrece otra herramienta eficaz para priorizar.

Las vulnerabilidades con un exploit “en circulación” tienen más probabilidades de ser explotadas y, por lo tanto, deben priorizarse por encima de otras vulnerabilidades sin exploits conocidos. Sin embargo, la posibilidad de explotación no es algo binario. Por eso, Exploit Maturity de Snyk no solo indica si existe un exploit, sino que también distingue entre distintos niveles de madurez:

  • Maduro: hay un exploit de código publicado que se puede usar fácilmente para aprovechar esta vulnerabilidad.

  • Prueba de concepto: hay disponible una prueba de concepto teórica publicada o una explicación detallada que demuestra cómo explotar esta vulnerabilidad.

  • Sin exploits conocidos: no se encontraron pruebas de concepto ni exploits para esta vulnerabilidad, o no están disponibles públicamente.

Entonces, ¿qué tan eficaz es priorizar según la madurez del exploit? ¡Mucho! Por ejemplo, el 10 % de las vulnerabilidades de Java tiene un exploit. Sin embargo, un análisis más profundo revela que solo el 36 % de esos exploits son realmente “maduros”, representan un peligro real e inmediato y, por lo tanto, deben ocupar los primeros lugares de la lista de prioridades.

Esta información detallada de seguridad —que, como mencionamos, ahora también está disponible para las vulnerabilidades de Linux en Snyk Container— se puede consultar fácilmente en la interfaz de usuario de Snyk y a través de la API. Con los filtros, puedes clasificar los problemas y crear informes detallados según Exploit Maturity.

Panel de vulnerabilidades de Snyk que muestra los filtros de madurez de explotación, con la opción «Madura» seleccionada y resultados de vulnerabilidades etiquetados como «Maduras».
La madurez de los exploits está disponible para todos los planes de Snyk: Free, Standard, Pro y Enterprise.

Prioriza con información detallada sobre cómo se ejecutan tus aplicaciones

En última instancia, las vulnerabilidades son algo subjetivo. La explotación de una misma vulnerabilidad en dos aplicaciones distintas puede tener un impacto muy diferente. Para ser eficaz, la priorización no puede basarse únicamente en características objetivas; también requiere información contextual detallada sobre la aplicación y cómo se ejecuta. Ahora, Snyk te ofrece una forma sencilla de obtener este contexto y tomar decisiones de priorización precisas.

Reachable Vulnerabilities

Para ofrecer un contexto más profundo sobre las vulnerabilidades a nivel de aplicación, nos complace anunciar la versión beta de Reachable Vulnerabilities.

Reachable Vulnerabilities te ayuda a determinar si una función vulnerable es reachable dentro de la ruta de ejecución de la aplicación y complementa nuestros agentes de monitoreo en tiempo de ejecución, que ayudan a determinar si realmente se llega a una función vulnerable durante la ejecución.

Que haya una vulnerabilidad en una parte de tu código no significa necesariamente que toda la biblioteca sea vulnerable. Por lo general, las vulnerabilidades a las que tu aplicación no llega durante el flujo de ejecución no comprometen la aplicación en su conjunto y, por lo tanto, representan menos riesgo que las vulnerabilidades a las que sí se llega.

Reachable Vulnerabilities de Snyk analiza el código patentado de la aplicación y sus interacciones específicas con dependencias de código abierto, y crea un mapa del grafo de llamadas. Al correlacionar el grafo de llamadas con la base de datos de vulnerabilidades de Snyk, Reachable Vulnerabilities determina si existe un flujo de datos que atraviesa la aplicación y llega hasta la función o el paquete vulnerable.

El análisis con Reachable Vulnerabilities se inicia mediante la CLI de Snyk y los resultados muestran la cantidad de vulnerabilidades a las que se puede llegar. Junto a cada vulnerabilidad se muestra un nivel de reachability, y debajo, la ruta desde el código de la aplicación hasta la función vulnerable.

Salida de la terminal de `snyk test --reachable-vulns` que destaca vulnerabilidades marcadas como «Potencialmente alcanzables» y «Alcanzables».

En la interfaz de usuario de Snyk, los usuarios pueden usar los nuevos filtros de Reachable Vulnerabilities para priorizar según si se puede llegar a una vulnerabilidad o no, y consultar información detallada sobre las rutas de llamadas exactas a las funciones vulnerables para corregirlas más rápido.

Panel de vulnerabilidades que muestra filtros para problemas alcanzables y dos problemas de seguridad etiquetados como «Alcanzable».

La información de reachability también está disponible en la pestaña Reports -> Issues. Puedes ordenar la lista de problemas según el nivel de reachability y también filtrarla con el nuevo filtro.

En un próximo artículo compartiremos más información sobre Reachable Vulnerabilities. ¡No te lo pierdas!

Reachable Vulnerabilities está disponible en versión beta para todos los planes pagos de Snyk: Standard, Pro y Enterprise. Por ahora, solo es compatible con proyectos Java (Maven).

Priorización de Kubernetes

Las configuraciones deficientes de las cargas de trabajo de Kubernetes pueden exponerte a riesgos y, por lo tanto, deben tenerse en cuenta al priorizar las correcciones. Nos complace ofrecer ahora priorización específica para Kubernetes en Snyk.

La integración de Snyk con Kubernetes te permite importar y probar tus cargas de trabajo en ejecución, así como identificar vulnerabilidades en las imágenes y configuraciones asociadas que podrían reducir su seguridad. Una vez importadas, Snyk sigue monitoreando esas cargas de trabajo e identifica problemas de seguridad adicionales a medida que se implementan imágenes nuevas y cambia la configuración de la carga de trabajo.

Ahora, las configuraciones de las cargas de trabajo de Kubernetes que Snyk monitorea, como los límites de CPU y memoria, los permisos y las capacidades descartadas, se procesan junto con los datos de vulnerabilidades para calcular la puntuación de prioridad de Snyk. Esto te brinda más contexto sobre los problemas identificados en tus cargas de trabajo y te ayuda a tomar decisiones de priorización basadas en un mejor contexto.

La configuración de Kubernetes está disponible en todos los planes pagos de Snyk Container: Standard, Pro y Enterprise.

Automatiza la priorización en toda tu organización

A escala, controlar la priorización en distintos proyectos y equipos se vuelve complejo. Los desarrolladores necesitan poder priorizar fácilmente las correcciones dentro de los límites establecidos por el equipo de seguridad, idealmente de forma automatizada y sin fricciones.

Para ayudar a las organizaciones a priorizar y reducir automáticamente la prioridad de las vulnerabilidades en todos sus proyectos, nos complace anunciar la versión beta de Security Policies de Snyk.

Ahora, las organizaciones pueden definir sus estrategias de priorización en una política de seguridad y aplicarlas a distintos equipos y proyectos según sus necesidades. Cada política contiene una regla o un conjunto de reglas que define exactamente cómo deben tratarse las vulnerabilidades.

Formulario de políticas de seguridad de Snyk que muestra las organizaciones seleccionadas y una regla que cambia la gravedad de la madurez de explotación a Alta

Las reglas activan acciones según determinadas condiciones. Actualmente, pueden cambiar la gravedad de las vulnerabilidades según su tipo (para esto usamos CWE, un estándar común para clasificar las vulnerabilidades según sus características) y Exploit Maturity. Por ejemplo, una política podría incluir una regla para aumentar la gravedad de todas las vulnerabilidades XSS (cross-site scripting) con exploits maduros y otra para reducir la gravedad de las vulnerabilidades RCE (remote code execution).

Poco a poco, agregaremos más opciones de granularidad a estas reglas para admitir acciones y condiciones adicionales, así como la posibilidad de asignar una política a proyectos específicos mediante etiquetas y atributos.

Security Policies está disponible en versión beta para los planes Snyk Pro y Enterprise.

Facilitamos la priorización eficaz

En un mundo ideal “sin riesgos”, las organizaciones tendrían el tiempo y los recursos para corregir todas las vulnerabilidades pendientes. Por supuesto, esto no es posible. Priorizar las correcciones es la única solución disponible, pero hacerlo bien es todo un reto. Para que la priorización sea eficaz, se necesitan conocimientos especializados en seguridad y un contexto profundo que permita tomar decisiones precisas.

Al ofrecer priorización instantánea para agilizar la clasificación de problemas, contexto profundo de las aplicaciones para impulsar decisiones de priorización basadas en datos y gobernanza a escala para ayudar a las organizaciones a gestionar la priorización, las capacidades de Snyk diseñadas para desarrolladores facilitan que los equipos de desarrollo y seguridad prioricen de forma eficaz y, en última instancia, reduzcan el riesgo.

¡Empieza a usar ahora las capacidades de priorización de Snyk!

Empieza con Capture the Flag

Aprende a resolver desafíos de Capture the Flag viendo nuestro taller virtual introductorio a pedido.

Publicado en: