Skip to main content

5 formas en que Snyk te ayuda a priorizar y corregir vulnerabilidades

Escrito por
Headshot of Josefa Riveros

Josefa Riveros

Priority blog Featured

18 de febrero de 2020

0 minutos de lectura

Nuestro equipo realizó recientemente algunos cambios en el aspecto y funcionamiento de nuestros informes para que te resulte aún más fácil crear informes de seguridad de aplicaciones que tengan un impacto positivo en tu empresa.

¿Te cuesta poner orden en el caos?

Imagina que acabas de mudarte a una casa nueva y compraste algunos muebles «listos para armar». No puede ser tan difícil, ¿verdad? Al abrir las cajas, te encuentras con un millón de tornillos, arandelas y piezas de plástico extrañas. «¿Esta pieza es parte del mueble o solo de la caja?», te preguntas. De pronto, empiezas a sentirte abrumado por el desorden que tienes enfrente. Entonces recuerdas que esto no tiene por qué ser tan complicado. ¡Hay un manual de instrucciones! Después de esforzarte un poco (y cometer un par de errores), te relajas y te sientes satisfecho con el resultado.

Muchos de nuestros clientes conocen bien esta sensación cuando se trata de corregir las vulnerabilidades de sus proyectos. Por desgracia, en este caso no hay un manual de instrucciones, porque cada equipo tiene sus propias prioridades. Ejecutaste un montón de pruebas y ahora tienes ante ti una pila de vulnerabilidades. «¿Esta vulnerabilidad realmente representa un riesgo o podemos preocuparnos por ella más adelante?», te preguntas. Y vuelve esa sensación de agobio.

¿Por dónde empezar? ¿Cómo puedes priorizar estas vulnerabilidades para que tus equipos avancen y sientan esa misma satisfacción de «¡lo logré!»?

Hemos visto que nuestros clientes pueden ser muy creativos con nuestros informes: convierten esa pila de vulnerabilidades en algo más manejable de lo que pueden sentirse orgullosos. Por eso, como parte del proceso de desarrollo del producto, les preguntamos cómo usan los informes y aprendimos mucho sobre lo que les funciona.

Queremos compartir algunas de estas ideas contigo porque, aunque no hay un conjunto único y claro de instrucciones, sí existen métodos probados que pueden ayudarte a priorizar mejor las vulnerabilidades de tu empresa y empezar a reducir su cantidad.

Crea una lista priorizada para tus desarrolladores

En noviembre, publicamos datos sobre la madurez de los exploits a partir de los resultados de Project, y rápidamente se convirtieron en uno de los favoritos de nuestros clientes. Ahora también puedes filtrar por madurez de los exploits en la pestaña Issues, dentro del área Reports, para identificar las vulnerabilidades específicas que afectan a tus proyectos y que cuentan con exploits disponibles públicamente (a los que llamamos exploits «maduros»). Las vulnerabilidades de seguridad con exploits conocidos representan un riesgo mucho mayor que las que no los tienen, por lo que deben atenderse primero.

Ahora, la lista de filtros de Issues te permite filtrar por:

  • Tipo de problema: elige Vulnerabilities para centrarte en la seguridad

  • Madurez del exploit: elige Mature para centrarte en los mayores riesgos de tu proyecto

  • Estado: elige Open para centrarte en las vulnerabilidades que aún no has atendido

  • Corregible: filtra las vulnerabilidades que pueden corregirse con las opciones de parche y actualización

Te recomendamos acotar aún más el alcance para obtener información más práctica: filtra los datos por «High Severity» en la lista de filtros de nivel superior y por «Fixable» en los filtros de Issues. Así, tú y tu equipo podrán centrarse en las vulnerabilidades de mayor riesgo que tus desarrolladores pueden corregir con relativa facilidad. Si filtras por gravedad alta y por «upgrade» o «patch», obtendrás una lista de todos los proyectos con vulnerabilidades corregibles de gravedad alta, que además representan logros rápidos y de gran impacto para tus equipos. Comparte esta lista con tu equipo para que sepan qué vulnerabilidades atender primero.

Panel de software que muestra una página de informes con filtros de proyectos y una lista de problemas de seguridad, incluidos la gravedad, los identificadores CVE, los proyectos afectados y los conocidos-

Ordena para actuar rápido

Aunque hayas aplicado filtros, la lista todavía puede parecer abrumadora. ¡No te preocupes! Puedes enfocarte y priorizar aún más: consulta la vista de problemas agrupados y ordena por «projects affected» para ver qué vulnerabilidad corregible es la más extendida en tu organización. Así podrás centrarte en corregir los problemas que tendrán el mayor impacto en toda la organización.

Panel de informes de proyectos que muestra una lista ordenable de proyectos, la cantidad de problemas, las fechas y los controles de exportación

También puedes acceder a esta lista directamente desde la pestaña Summary: haz clic en el texto que aparece debajo del número de problemas de gravedad alta para abrir una versión de la pestaña Issues con los filtros ya aplicados. Después, solo tienes que ordenar la columna de proyectos.

Cuando termines con los problemas de gravedad alta, ¡pasa a los de gravedad media!

Panel de software que muestra resúmenes de problemas de seguridad y licencias, con recuentos por gravedad y gráficos de problemas a lo largo del tiempo

Aborda las vulnerabilidades peligrosas y evita filtraciones de datos

Cuando aparezca el próximo caso de event-stream o una vulnerabilidad de ejecución remota de código, cada minuto sin una corrección es crítico. Sin embargo, reunir una lista de todos los proyectos afectados puede ser un verdadero dolor de cabeza.

Usa el campo Search issues de la pestaña Issues para buscar un CVE específico (CVE-2018-11776), un CWE (CWE-20) o un tipo de problema (por ejemplo, «struts») y ver cuántos proyectos están afectados. Haz clic en view issues ungrouped para ver los problemas separados por proyecto y determinar con qué equipos debes comunicarte.

Panel de informes de software que muestra una lista de problemas de proyectos con identificadores CVE, proyectos afectados y estado de explotación.

Los clientes han aplicado esta técnica de forma eficaz para priorizar y centrarse en una vulnerabilidad específica. Sin embargo, hemos aprendido que no la usan solo para responder a filtraciones urgentes: también suelen enfocarse de esta manera en vulnerabilidades específicas como parte de su rutina de trabajo.

Por ejemplo, podrías pedirle a tu equipo que se enfoque en corregir todas las vulnerabilidades de inyección de código arbitrario de tu organización. Cuando las hayan corregido todas, el equipo puede celebrar y elegir otra vulnerabilidad para atender.

Corrige las vulnerabilidades a tiempo

En un mundo ideal, tu organización nunca tendría vulnerabilidades abiertas durante más de 30 días. Pero sabemos que no siempre es así: las vulnerabilidades pueden acumularse rápidamente y, antes de que te des cuenta, algunas llevan abiertas 90, 180 o hasta 365 días.

En la pestaña Summary, el gráfico «Exposure window» te muestra de un vistazo cuánto tiempo llevan abiertas las vulnerabilidades de tu organización.

Gráfico de la ventana de exposición que muestra los problemas y proyectos de noviembre a febrero; los problemas de más de 91 días representan la mayor parte del total.

Ve a la pestaña Issues, haz clic en ungrouped issues y consulta las fechas de introducción de las vulnerabilidades de tu organización. También puedes ordenar esta columna de forma ascendente para ver cuáles son los problemas más antiguos de tu cartera. Si además aplicas algunos filtros, como el estado Open, las opciones de corrección Upgrade y Patch, y el tipo de problema Vulnerability, podrás identificar las vulnerabilidades corregibles que llevan más tiempo en tu organización y dirigir a tus equipos de desarrollo para que primero eliminen los problemas más antiguos.

Panel de software que muestra una página de informes con una pestaña de problemas que enumera vulnerabilidades de proyectos, identificadores CVE, proyectos afectados y el estado de explotabilidad.

A medida que resuelvan estos problemas, también empezarás a ver cambios en el gráfico Exposure window.

Enfócate primero en tus proyectos más importantes

Si quieres enfocarte específicamente en un subconjunto de proyectos que conforman una aplicación crítica para el negocio de tu equipo, selecciona los proyectos correspondientes en el menú desplegable Projects, junto con las opciones que quieras en la lista Filters. Así podrás navegar por las distintas pestañas que conforman toda el área de informes. Ahora puedes priorizar fácilmente vulnerabilidades específicas o analizar en profundidad el estado de las dependencias (por ejemplo, ver los paquetes obsoletos) y el análisis de licencias de ese subconjunto de proyectos.

Panel de estado de las dependencias de software que muestra problemas de seguridad y licencias por nivel de gravedad, con gráficos de resumen de los problemas a lo largo del tiempo y del período de exposición.

Más allá de los filtros

Esta es solo una pequeña muestra de los informes que puedes crear directamente en nuestra plataforma. Siempre puedes exportar la información de la pestaña Issues como PDF para compartirla directamente con tus colegas, o exportar los datos de todas las pestañas de informes como CSV o mediante la API para complementarlos e integrarlos con tus propias herramientas de informes y crear informes aún más complejos.

Para empezar

Los informes están disponibles en los planes Standard, Pro y Enterprise de Snyk. Es fácil empezar. ¡Nos encantaría conocer tus propios consejos y trucos!

¡Aplica filtros y mantente seguro!

Empieza con Capture the Flag

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