Plugin de IntelliJ para corregir dependencias vulnerables
Aner Mazur
2 de octubre de 2018
0 minutos de lecturaSnyk 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.

Busca Snyk e instala el plugin Snyk Vulnerability Scanning:

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:

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:

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.