Skip to main content

Plugin de IntelliJ para corregir dependencias vulnerables

Escrito por
Headshot of Aner Mazur

Aner Mazur

2 de octubre de 2018

0 minutos de lectura

Snyk acaba de lanzar un plugin para IntelliJ que permite a los desarrolladores encontrar y corregir vulnerabilidades en sus dependencias directamente desde su IDE.

Como parte del compromiso de Snyk de ayudar a los desarrolladores a hacerse cargo de la seguridad, hemos invertido mucho en crear integraciones completas con GitHub, GitLab y Bitbucket, para que encontrar y corregir vulnerabilidades sea una parte integral del proceso de desarrollo.

Esto ha sido clave para el éxito de Snyk, ya que permite analizar cada pull request y monitorear continuamente cualquier cambio en los repositorios de código.

Ahora queremos que los desarrolladores puedan abordar las vulnerabilidades incluso antes de confirmar su código, en el entorno donde pasan la mayor parte del tiempo. Diseñado para ejecutarse dentro de IntelliJ y directamente en la JVM, ahora puedes usar Snyk Open Source para realizar pruebas de seguridad y recibir recomendaciones prácticas para corregir vulnerabilidades sin salir de IntelliJ; no necesitas instalar Node.

El plugin es compatible con todos los proyectos Maven y es gratis.

Cómo empezar

El plugin de Snyk es un plugin estándar de IntelliJ. Aquí tienes un breve recordatorio de cómo instalarlo.

Ve a IntelliJ IDEA > Preferencias > Plugins.

Menú de la aplicación IntelliJ IDEA abierto, con Preferencias resaltado y opciones para buscar actualizaciones y acceder a servicios.

Busca Snyk e instala el plugin Snyk Vulnerability Scanning:

Preferencias de IntelliJ IDEA que muestran la sección Plugins con “Snyk Vulnerability Scanning” seleccionado en los resultados de búsqueda

Luego acepta los avisos de privacidad, reinicia IntelliJ IDE y verás el plugin de Snyk como una pestaña pequeña en la esquina inferior derecha.

Es posible que debas iniciar sesión en Snyk con tu cuenta de GitHub si aún no lo has hecho. Una vez que hayas iniciado sesión, podrás elegir fácilmente qué proyecto analizar:

Cuadro de selección de proyectos de IntelliJ que muestra org.snyk.groceries:spring-goof:0.0.1-SNAPSHOT e io.github.snyk:todolist-web-struts:0.0.1

Cómo encontrar y corregir vulnerabilidades

Una vez que se analice un proyecto, obtendrás una lista de todas las vulnerabilidades encontradas. Este es un ejemplo de una aplicación de demostración sencilla de Spring:

Editor de código IntelliJ IDEA que muestra dependencias de Maven junto con una vulnerabilidad de ejecución de código arbitrario y los detalles de la actualización sugerida.

Para cada vulnerabilidad, puedes ver el título con el tipo de vulnerabilidad y un enlace a los detalles para obtener más información sobre los rangos de versiones vulnerables, cómo se puede explotar, etc.

En gris, verás la dependencia de código abierto que introdujo la vulnerabilidad. Ten en cuenta que muchas veces puede tratarse de una dependencia transitiva, como en el ejemplo de abajo. Podrás ver la ruta completa de dependencias que va desde la dependencia directa que agregaste hasta la vulnerable, incluidos todos los paquetes intermedios.

El plugin de IntelliJ de Snyk te recomendará una actualización (que se muestra en verde y en negrita), es decir, la versión mínima a la que debes actualizar para eliminar esa vulnerabilidad. Y aún mejor: puedes ver cómo quedará todo el árbol de dependencias después de la actualización (en el recuadro verde).

Al hacer clic en la dependencia directa, irás directamente al lugar de tu archivo pom.xml donde está definida y podrás aplicar la actualización fácilmente.

Y esto no termina aquí...

Al principio, planeamos agregar compatibilidad con Gradle y Sbt, además de Maven, y también con otros IDE que quizá uses. Esperamos recibir comentarios de nuestra querida comunidad y los tendremos en cuenta. ¡Que disfrutes programando!

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.

Publicado en: