Skip to main content

Presentamos Snyk para .NET, Go y PHP

Escrito por
Headshot of Aner Mazur

Aner Mazur

21 de diciembre de 2017

0 minutos de lectura

Se acercan las fiestas y pensamos: ¿por qué no darle un pequeño regalo a la creciente comunidad de Snyk?

Snyk siempre se ha comprometido a facilitar el uso de código de código abierto sin comprometer la seguridad. Hoy damos otro gran paso y lanzamos la compatibilidad de CLI con .NET, Go y PHP.

La CLI te da la flexibilidad de probar tus aplicaciones de forma manual o en pasos clave de tu proceso de CI. Analiza el árbol de dependencias para identificar cada dependencia en uso y su versión, y luego las prueba todas. Pronto habrá integraciones con sistemas de administración de código fuente.

Así que tómate unos minutos (no te llevará más) y protege tus aplicaciones.

Inicio rápido

Primero, instala o actualiza Snyk a la versión más reciente y autentícate:

npm install -g snyk 
snyk auth

Snyk revisa los módulos instalados localmente para resolver todas las dependencias, así que debes verificar que ya estén disponibles.

Para .NET, verifica que la carpeta packages/(.NET) o obj/(.NET Core) se haya completado con Visual Studio o dotnet restore.

Para Golang, verifica que vendor/ se haya completado con dep ensure o govendor sync. Además, la variable de entorno GOPATH debe estar configurada correctamente.

Para PHP, verifica que el archivo composer.lock se haya creado con composer install.

Luego, ve a la carpeta de tu proyecto y analiza si tiene vulnerabilidades:

snyk test

Esto mostrará todas las vulnerabilidades detectadas, por ejemplo:

$ ✗ snyk test
✗ Medium severity vulnerability found on Microsoft.AspNetCore.All@2.0.0
- desc: Open Redirect
- info: https://snyk.io/vuln/SNYK-DOTNET-MICROSOFTASPNETCOREALL-600122
- from: dotnetcore@1.0.0 > Microsoft.AspNetCore.All@2.0.0

✗ Medium severity vulnerability found on Microsoft.AspNetCore.Server.HttpSys@2.0.0
- desc: Denial of Service (DoS)
- info: https://snyk.io/vuln/SNYK-DOTNET-MICROSOFTASPNETCORESERVERHTTPSYS-600125
- from: dotnetcore@1.0.0 > Microsoft.AspNetCore.All@2.0.0 > Microsoft.AspNetCore.Server.HttpSys@2.0.0

✗ High severity vulnerability found on System.Net.Http@4.3.0
- desc: Privilege Escalation
- info: https://snyk.io/vuln/SNYK-DOTNET-SYSTEMNETHTTP-60047
- from: dotnetcore@1.0.0 > System.Net.Http@4.3.0

Para hacer seguimiento de las vulnerabilidades recién divulgadas en un proyecto a través de la interfaz de Snyk, usa el comando monitor. Puedes usar tanto snyk test como snyk monitor en tus entornos de CI para integrar la seguridad en tu canalización de implementación.

snyk monitor
Panel de seguridad que muestra un archivo composer.lock vulnerable con un problema de ejecución de código arbitraria en Zend Framework.

Protección de Go

El ecosistema de Go tiene una cantidad sorprendentemente grande de administradores de paquetes, pero empieza a concentrarse en torno al administrador de paquetes de “experimento oficial” dep, que cada vez más proyectos adoptan. Aun así, un porcentaje considerable de los clientes que se ofrecieron a participar en nuestra alfa de Go solicitó compatibilidad también con govendor. Por eso, la CLI de Snyk es compatible con ambos administradores de paquetes.

La CLI de Snyk examina todas tus importaciones, directas y transitivas, y las compara con las versiones fijadas en Gopkg.lock o vendor/vendor.json.

Mantente al tanto de las próximas publicaciones sobre Golang, donde compartiremos lo que aprendimos sobre el ecosistema de paquetes de Go y los distintos desafíos que enfrentamos al desarrollar la compatibilidad de Snyk con Go.

Protección de .NET

Analizamos proyectos de .NET y .NET Core para revisar las dependencias de NuGet en busca de vulnerabilidades conocidas. Procesamos archivos packages.config para proyectos de .NET y archivos obj/project.assets.json para proyectos de .NET Core.

También ofrecemos compatibilidad con archivos .sln para automatizar la seguridad del código abierto en todos los proyectos de una solución.

Curiosamente, mientras desarrollábamos la compatibilidad con .NET, nos sorprendió descubrir la gran importancia de analizar .NET en busca de vulnerabilidades de código abierto. La aplicación predeterminada de .NET Core v2 depende de Microsoft.AspNetCore.All/2.0.0, que introduce más de 10 vulnerabilidades. ¡Revisa tus proyectos hoy mismo!

Protección de PHP

Snyk permite probar y monitorear proyectos de PHP cuyas dependencias se administran con composer.

Analizamos proyectos de PHP mediante la revisión de tu archivo composer.lock y comparamos las versiones específicas de cada dependencia directa y profunda de tu proyecto con nuestra base de datos de vulnerabilidades de Composer.

¡Pruébalo!

Trabajamos intensamente en este lanzamiento, recopilamos comentarios de nuestros usuarios alfa e hicimos mejoras sobre la marcha. Nos entusiasma abrir ahora la CLI para todo el mundo.

Como siempre, Snyk es gratis para el uso con código de código abierto, sin importar cuántos proyectos de código abierto tengas. El código abierto es un gran impulso para el desarrollo y nos alegra contribuir a que sea lo más seguro posible.

Si tienes algún comentario, cuéntanos. Siempre queremos que Snyk sea aún mejor. Del mismo modo, si quieres que Snyk sea compatible con algún lenguaje de programación o administrador de paquetes, cuéntanos cuál. Esto no solo nos ayuda a definir prioridades: también nos encanta ofrecer acceso anticipado a desarrolladores con ganas de probar y compartir sus comentarios.

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.

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.

Live Stream

Agentes de remediación, sin misterios: por qué solucionar es mejor que encontrar

Descubre cómo el agente de remediación de Snyk utiliza inteligencia de seguridad, análisis de explotabilidad y validación para convertir las vulnerabilidades en solicitudes de incorporación de cambios listas para fusionarse.