Skip to main content

Codificación segura con el nuevo plugin de Snyk para JetBrains IDEs

Escrito por
Blog Design JetBrains IDE plugin

7 de abril de 2021

0 minutos de lectura

Nos complace anunciar nuestro nuevo plugin para JetBrains IDEs, que facilita a los desarrolladores encontrar y corregir problemas de seguridad mientras programan.

El nuevo plugin gratuito de Snyk para JetBrains IDEs permite a los desarrolladores que usan IntelliJ IDEA, WebStorm y PyCharm encontrar y corregir fácilmente vulnerabilidades conocidas en sus dependencias de código abierto, así como problemas de seguridad y errores en su propio código. Con el nuevo plugin, los desarrolladores pueden proteger toda su base de código mientras crean sus aplicaciones, sin interrumpir su flujo de trabajo y, en última instancia, publicar código seguro más rápido.

IntelliJ IDEA muestra código Java con el panel de Snyk que resalta vulnerabilidades de alta gravedad en el manejo de contraseñas y sugiere soluciones.

Aunque esta nueva capacidad combinada actualmente solo está disponible en IntelliJ IDEA, WebStorm y PyCharm, el plugin se puede usar en cualquier IDE de JetBrains para analizar las vulnerabilidades en tus dependencias de código abierto.

Esto incluye:

  • Android Studio

  • AppCode

  • GoLand

  • PhpStorm

  • Rider

  • RubyMine

Velocidad + seguridad = no son excluyentes

Los desarrolladores están bajo presión constante para entregar código más rápido. Al mismo tiempo, también se espera que se aseguren de que ese código no tenga problemas de seguridad ni errores. A menudo, estos dos requisitos —un ritmo de desarrollo rápido y código seguro— han ido en detrimento uno del otro. Por un lado, publicar código en producción sin revisarlo ni probar su seguridad implica un riesgo. Por otro, las verificaciones de seguridad pueden ralentizar el desarrollo si se realizan demasiado tarde en el proceso. Hacer pruebas durante la compilación o después significa que los desarrolladores tendrán que volver a su código, identificar el problema, aplicar la corrección, integrar, probar y volver a iniciar el proceso de compilación.

DevSecOps y la idea de delegar más responsabilidades de seguridad en los desarrolladores están ganando terreno entre los equipos de desarrollo y seguridad como una forma de entregar código seguro sin sacrificar velocidad. Para que los desarrolladores se hagan más responsables de la seguridad, deben poder integrarla en su flujo de trabajo de desarrollo lo antes posible en el ciclo de vida del desarrollo de software y de la forma más sencilla posible.

El nuevo plugin de Snyk para JetBrains se diseñó precisamente para esto. Al mostrar los distintos tipos de problemas de seguridad de una aplicación, el nuevo plugin para IDE es rápido, preciso y fácil de usar, y permite a los desarrolladores integrar las pruebas de seguridad y calidad desde las primeras líneas de código, directamente en su IDE.

Veámoslo más de cerca.

¡Un plugin para dominarlos a todos!

Usar un plugin para identificar las vulnerabilidades en las dependencias de código abierto que se incorporan a un proyecto y otro para detectar problemas de seguridad y errores en el código de los desarrolladores implica cambiar constantemente de contexto y perder tiempo de desarrollo.

El nuevo plugin de Snyk para JetBrains elimina este inconveniente al combinar el análisis de composición desoftware (SCA) y el análisis estático (SAST), lo que facilita mucho a los desarrolladores que usan IntelliJ IDEA, WebStorm y PyCharm obtener una vista consolidada de todos los distintos problemas de seguridad y calidad en su código.

Panel de seguridad que muestra detalles de una vulnerabilidad de ejecución arbitraria de código, niveles de gravedad, recomendaciones para corregirla y ejemplos de correcciones de código.

Rápido, preciso y gratuito

El nuevo plugin de Snyk para JetBrains se diseñó para integrarse en el flujo de trabajo de desarrollo con la menor fricción posible y permite a los desarrolladores analizar su código y ver los resultados en segundos.

El plugin es fácil de configurar y se puede descargar e instalar como cualquier otro plugin de JetBrains, directamente desde tu IDE o desde el marketplace de JetBrains.

Marketplace de plugins de IntelliJ IDEA que muestra el plugin Snyk Vulnerability Scanner con su descripción y el botón Instalar

Una vez instalado, puedes iniciar fácilmente los distintos tipos de análisis de seguridad del plugin y ver los resultados en el IDE. El motor de IA que impulsa el plugin para IDE garantiza tanto la rapidez de los análisis como la precisión de los resultados, lo que ofrece a los desarrolladores un ciclo de retroalimentación extremadamente rápido.

Los análisis de seguridad del plugin se ejecutan con la base de datos de vulnerabilidades de Snyk, la más completa del mercado, y los resultados ofrecen abundante información para ayudar a los desarrolladores a tomar medidas rápidamente.

Ah, ¿y mencioné que el plugin es totalmente gratuito?Cualquier usuario de Snyk que use JetBrains IntelliJ, WebStorm o PyCharm puede descargar el plugin y empezar a analizar su código en busca de problemas, incluso quienes usan el plan gratuito.

Primeros pasos para programar de forma segura

¿Cómo empezar? Es fácil. Puedes configurar el plugin desde tu IDE de JetBrains en tres sencillos pasos: ¡instalar, conectar y analizar!

Primero, ve a Preferences > Plugins desde tu IDE (por ahora, solo son compatibles IntelliJ y WebStorm), busca Snyk en el marketplace de JetBrains y haz clic en OK para descargar e instalar el plugin.

IntelliJ IDEA muestra un árbol de proyectos Java y código JavaScript para analizar fechas en el editor.

A continuación, conecta el plugin con tu cuenta de Snyk (si todavía no creaste una cuenta gratuita de Snyk, haz clic aquí). Para hacerlo, haz clic en el botón Connect your IDE to Snyk en la vista del plugin y sigue las instrucciones para autenticarte.

IntelliJ IDEA muestra código Java con el panel de Snyk, que invita al usuario a conectar su IDE con Snyk.

¡Eso es todo! Ahora solo tienes que ejecutar una prueba de Snyk. Haz clic en el botón Analyze now para iniciar las pruebas de seguridad de Snyk. En unos segundos, el plugin te mostrará una lista de los distintos tipos de problemas detectados, agrupados en tres categorías:

  • Seguridad de código abierto: vulnerabilidades conocidas en las dependencias directas e indirectas (transitivas) de código abierto 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

IntelliJ IDEA muestra código fuente de Java junto al panel de Snyk, que se prepara para analizar 49 archivos en busca de vulnerabilidades de código abierto y problemas de seguridad.

Para empezar a corregir problemas, haz clic en cualquiera de estas categorías para expandir la vista de árbol.

Para las vulnerabilidades en las dependencias de código abierto, el plugin explica cómo se introdujo la vulnerabilidad y también indica cómo corregirla, recomendando la versión de la dependencia a la que debes actualizar. Un enlace a la base de datos de vulnerabilidades de Snyk ofrece información adicional sobre el problema, incluidos CVSS, CVE y CWE.

Informe de seguridad que muestra una vulnerabilidad de ejecución de código arbitrario en Apache Commons FileUpload, con CWE, CVE, CVSS y las versiones afectadas y corregidas.

Para los problemas de seguridad y calidad en el código de los desarrolladores, el plugin detalla el flujo de datos y señala los archivos y las líneas pertinentes que originan el problema. Los desarrolladores pueden hacer clic en el nombre del archivo para abrirlo rápidamente en la línea exacta que introduce el problema. El análisis del flujo de datos te ayuda a identificar los problemas y a entender cómo se propagan por la aplicación, para que sea más fácil comprender y rastrear los casos complejos.

¡Pero el plugin no se queda ahí! Además de mostrar qué está mal en el código, también ofrece ejemplos de cómo otras personas corrigieron el problema para ayudar a los desarrolladores a actuar más rápido.

Aviso de vulnerabilidad de alta gravedad que recomienda codificar contraseñas con BCrypt, con tres ejemplos externos de soluciones y una diferencia de código.

¿Te preocupa que aparezcan demasiados problemas en tu IDE? No te preocupes. El plugin de Snyk facilita la priorización de las correcciones mediante opciones de filtrado integradas.

Primero, puedes elegir ejecutar un análisis específico en lugar de varios tipos de análisis. En la parte superior de la vista del plugin, haz clic en el filtro Scan For Issue Types, selecciona el tipo de análisis que quieres ejecutar y vuelve a iniciarlo. El plugin solo mostrará los resultados de ese análisis.

Segundo, al revisar los problemas encontrados en el análisis, puedes enfocarte en corregir los que representan la mayor amenaza: los que tienen una gravedad alta asignada. Para hacerlo, usa los filtros de Severity.

El IDE WebStorm muestra código JavaScript con hallazgos de seguridad de Snyk, incluidas vulnerabilidades de inyección de comandos, cross-site scripting y asignación de recursos.

Para obtener más información sobre cómo usar este plugin, consulta nuestro blog Cómo corregir problemas de seguridad de Java mientras programas en IntelliJ IDEA.

Protege tu código desde el principio

Al analizar el código desde un IDE, los problemas se detectan en las primeras etapas del desarrollo, incluso antes de confirmar el código en un sistema de administración de código fuente. En lugar de encontrar una vulnerabilidad crítica más adelante en el proceso de desarrollo de software y tener que rediseñar el código cuando hacerlo toma más tiempo y es técnicamente más difícil, analizar el código desde el momento en que se agrega es más eficiente y productivo.

Desarrollar rápido es un requisito comercial. Pero también lo es evitar que los desarrolladores y las organizaciones para las que trabajan se expongan a riesgos de seguridad. El nuevo plugin de Snyk para JetBrains IDE ayuda a los desarrolladores a cumplir ambos requisitos sin tener que sacrificar ninguno.

Prueba el nuevo plugin de Snyk para JetBrains IDEs

Descarga nuestro nuevo plugin para JetBrains IDEs y facilita que los desarrolladores encuentren y corrijan problemas de seguridad mientras programan.

Leer más

feature insights context
Blog

Los ataques autónomos ya están aquí. La defensa debe estar a su altura.

Los atacantes autónomos están reduciendo el tiempo disponible para defenderse. Descubre cómo el descubrimiento, la corrección, la validación y la prevención continuos pueden ayudar a los equipos de seguridad a seguirles el ritmo.

illustration hero ai
Blog

El huracán de la IA ha llegado

La IA está acelerando por igual la creación de software y los ciberataques. Los líderes deben proteger los agentes y el código desde el inicio, aplicar controles en tiempo de ejecución y validar las defensas de forma independiente.

feature insights context
Blog

¿La prevención es, en esencia, un problema ya resuelto?

La prevención en el código generado por agentes está resuelta desde el punto de vista arquitectónico, pero elegir controles que protejan la seguridad sin ralentizar el desarrollo sigue siendo el desafío.