Skip to main content

Protege tus dependencias de código abierto con la extensión de Snyk para Visual Studio Code

Escrito por
blog feature oss vscode

23 de noviembre de 2021

0 minutos de lectura

Nos complace anunciar nuevas funcionalidades en la extensión Snyk Vulnerability Scanner para Visual Studio Code, que facilitan a los desarrolladores detectar y corregir vulnerabilidades y problemas de licencias en sus dependencias de código abierto.

Para ayudar a los desarrolladores a asumir una mayor responsabilidad por la seguridad de sus aplicaciones, las herramientas de seguridad deben integrarse sin problemas en los flujos de trabajo existentes y en las herramientas que los desarrolladores usan a diario. El 71 % de los desarrolladores la usa: Visual Studio Code es una de esas herramientas.

Usar una extensión para detectar vulnerabilidades en las dependencias de código abierto que se incorporan a un proyecto y otra para detectar problemas de seguridad y calidad en el código de los desarrolladores obliga a cambiar de contexto y consume tiempo. Al combinar el análisis de composición de software (SCA) y las pruebas estáticas de seguridad de aplicaciones (SAST), la extensión Snyk Vulnerability Scanner para Visual Studio Code facilita que los desarrolladores tengan una vista unificada de todos los distintos problemas de seguridad y calidad del código, lo que les permite abordar la seguridad de toda su base de código desde las primeras etapas del desarrollo.

Basada en Snyk CLI, la nueva extensión es compatible con todos los lenguajes que admite Snyk Open Source, incluidos JavaScript, Java, .NET, Python, Go, Ruby, PHP, Swift y Objective-C.

Análisis de vulnerabilidades de Snyk en VS Code que muestra un problema de recorrido de directorios en el paquete de JavaScript adm-zip y los detalles para solucionarlo

¿Cómo empezar? Es fácil. Puedes configurar la extensión desde Visual Studio Code en dos pasos rápidos y sencillos: instalarla y conectarla.

En esta publicación veremos todo eso, pero si quieres aprender aún más, te recomendamos asistir a las transmisiones en vivo de Creación de aplicaciones seguras en VS Code por YouTube o Twitch el 29 de noviembre a las 2 p. m. UTC.

Instala la extensión de Snyk en Visual Studio Code

Primero, ve a Preferencias, Extensiones (desde el IDE), busca Snyk en Visual Studio Code Marketplace y haz clic en Instalar para descargar e instalar la extensión. Esto debería tomar unos segundos. Luego, la extensión se agregará a la barra lateral.

Vista Extensiones de Visual Studio Code que muestra la extensión Snyk Vulnerability Scanner instalada y su página de detalles

Conecta Visual Studio Code con Snyk

A continuación, debes conectar la extensión con tu cuenta de Snyk. Si todavía no tienes una, crea tu cuenta gratuita de Snyk .

Para hacerlo, haz clic en el ícono de Snyk en la barra lateral y, luego, en el botón Conectar VS Code con Snyk dentro de la vista de la extensión.

Se abrirá automáticamente una ventana del navegador para que te autentiques.

Página de autenticación de Snyk para la CLI, con un botón «Authenticate» e instrucciones para ejecutar el comando snyk auth.

Haz clic en Autenticar para completar el proceso. Una vez establecida la conexión, la extensión iniciará automáticamente tu primer análisis de Snyk en Visual Studio Code:

Visual Studio Code muestra un análisis de vulnerabilidades de Snyk con 86 problemas y una advertencia detallada sobre la inyección de código en dustjs-linkedin.

Todo el proceso, de principio a fin, no debería tomar más de un minuto.

Corrige problemas en tus dependencias de código abierto

La nueva extensión muestra una lista de todos los tipos de problemas que Snyk detectó, organizados en tres categorías:

  • Seguridad de código abierto ¡Novedad! Vulnerabilidades conocidas en las dependencias de código abierto directas e indirectas (transitivas) que incorporas al proyecto

  • Seguridad del código - Debilidades de seguridad detectadas en tu propio código

  • Calidad del código - Problemas de calidad en tu propio código

Con …, en la esquina superior derecha de la vista de la extensión, puedes elegir enfocarte en una sola categoría de problemas.

Nos enfocaremos en la nueva categoría que admite la extensión: Seguridad de código abierto, que muestra vulnerabilidades en las dependencias de código abierto. Para cada vulnerabilidad detectada, la extensión ofrece mucha información que te ayuda a corregirla rápidamente.

Selecciona una de las vulnerabilidades para ver esta información.

Detalles de una vulnerabilidad de Snyk sobre un problema de contaminación de prototipos en dustjs-linkedin, con las versiones afectadas y corregidas, la solución y la información sobre el exploit.

En la parte superior de la vista de vulnerabilidad que se abre, verás los metadatos de seguridad habituales (1), como el CWE, la puntuación CVSS y el ID de Snyk de la vulnerabilidad.

La extensión también explica cómo se introdujo la vulnerabilidad y ofrece una ruta para corregirla, recomendando a qué versión actualizar la dependencia (2).

La extensión también indica si hay un exploit de la vulnerabilidad circulando y si está desarrollado o no (3). En el ejemplo anterior, hay un exploit de prueba de concepto para el problema de contaminación de prototipos en la dependencia dustjs-linkedin. Las vulnerabilidades con exploits representan un mayor riesgo, ya que es más fácil aprovecharlas con fines maliciosos.

Debajo de esta información, la extensión muestra más detalles sobre cómo se introdujo una dependencia en el proyecto y la ruta para corregir el problema (4).

Por último, la extensión concluye con una descripción detallada de la vulnerabilidad (5): los tipos de ataques y cómo prevenirlos.

Solo queda actualizar la versión de la dependencia en el archivo de manifiesto, que en el caso de la aplicación JavaScript que se usa aquí es el archivo package.json.

Protege TODO tu código desde el principio

Como mencionamos anteriormente, la extensión de Snyk para Visual Studio Code te ofrece una vista integral de todos los problemas de tu aplicación y también detecta problemas de seguridad y calidad en tu propio código. La extensión destaca flujos de datos específicos y señala los archivos y las líneas de código pertinentes que causan el problema. Además de mostrar qué está mal en el código, el complemento también te ofrece ejemplos de cómo otras personas han corregido el problema, para que puedas actuar más rápido (en nuestra documentación encontrarás más información sobre cómo usar la extensión).

Al analizar el código desde un IDE, los problemas se detectan en las primeras etapas del desarrollo y antes de confirmar los cambios en un sistema de administración de código fuente. En lugar de descubrir una vulnerabilidad crítica más adelante en el proceso de desarrollo de software y tener que rediseñar el código una y otra vez, analizarlo desde el momento en que se agrega es mucho más eficiente y productivo.

Desarrollar rápido es un requisito del negocio. Pero también lo es no exponer al desarrollador ni a la organización para la que trabaja a riesgos de seguridad. La nueva extensión de Snyk para Visual Studio Code ayuda a los desarrolladores a cumplir ambos requisitos sin sacrificar ninguno. Instala hoy la extensión Snyk Vulnerability Scanner para Visual Studio Code.

Si quieres aprender más sobre cómo usar la extensión de Snyk para Visual Studio Code, mira las transmisiones en vivo de Creación de aplicaciones seguras en VS Code por YouTube o Twitch el 29 de noviembre a las 2 p. m. UTC.

Empieza con los desafíos de Capture the Flag

Aprende a resolver desafíos de captura la bandera con nuestro taller virtual introductorio a pedido.