Snyk lleva su enfoque de AppSec centrado en los desarrolladores a C/C++
4 de abril de 2023
0 minutos de lecturaSnyk es conocido por sus soluciones de seguridad de aplicaciones centradas en los desarrolladores para muchos ecosistemas, como Java, JavaScript, Python y otros. Snyk permite a los desarrolladores no solo encontrar problemas, sino también aplicar correcciones rápidamente, revolucionando la seguridad e integrándola desde las primeras etapas del SDLC.
En 2022, lanzamos la primera versión de la compatibilidad con paquetes de código abierto de C/C++ y hoy nos entusiasma anunciar la beta abierta de C/C++ para Snyk Code y las licencias para Snyk Open Source.
Los equipos de desarrollo sienten el impacto
El ecosistema de C/C++ tiene más de 40 años de historia. Con proyectos emblemáticos como Linux o Apache OpenOffice, C++ ha estado a la vanguardia de la revolución del código abierto. Sin embargo, mientras que Java, C# y JavaScript abordaron el «infierno de las dependencias» —es decir, la gestión de la cantidad cada vez mayor de dependencias de bibliotecas de código abierto—, C++ carece de un enfoque general. El problema es tan grave que la gestión de dependencias se convirtió en uno de los principales desafíos para los desarrolladores modernos de C++.
El año pasado, dimos el primer paso para apoyar a la comunidad de C/C++: habilitamos la búsqueda de bibliotecas de código abierto en aplicaciones de C/C++ sin un administrador de paquetes. Durante ese tiempo, aprendimos mucho de nuestros clientes y comprobamos que esta comunidad de desarrollo sólida y activa necesita más que una integración con administradores de paquetes para abordar la complejidad y profundidad del ecosistema.
Las aplicaciones de C/C++ enfrentan los mismos desafíos de escritura de código seguro y los mismos componentes vulnerables que cualquier otro lenguaje de desarrollo moderno. Sin embargo, este ecosistema tiene años de deuda técnica y tipos de vulnerabilidades únicos, y es anterior a los administradores de paquetes. Esto significa que los desarrolladores deben incorporar bibliotecas de código abierto directamente en su código.
Al buscar problemas de seguridad detectables mediante análisis estático, estos proyectos suelen tener que compilarse, lo que ralentiza o interrumpe los flujos de trabajo de desarrollo. C/C++ suele combinarse con muchos otros lenguajes, y las abstracciones que usan estas aplicaciones dificultan ver el flujo de datos real.
Toda esta complejidad deja brechas críticas que generan mucha frustración entre los desarrolladores y los equipos de seguridad, por ejemplo:
Baja productividad de los desarrolladores debido a otras herramientas que:
son lentas e interrumpen los flujos de trabajo de desarrollo
muestran mensajes difíciles de entender
generan alertas de vulnerabilidades que no permiten tomar medidas
carecen de un análisis adecuado del flujo de datos
tienen una curva de aprendizaje pronunciada
Bajo retorno de inversión y alto riesgo, ya que las herramientas de seguridad existentes para C/C++ son inferiores porque son:
costosas
requieren que el código se compile
especializadas y de nicho
difíciles de configurar y mantener
difíciles de integrar con los pipelines de compilación
y, en última instancia, dejan las aplicaciones vulnerables
Falta de visibilidad sobre las dependencias de código abierto, sus vulnerabilidades asociadas y los términos de sus licencias, porque:
no hay administradores de paquetes estandarizados
la mayoría de los desarrolladores incorpora copias de bibliotecas de código abierto
¿Qué hace Snyk para ayudar?
Snyk es líder del sector al ofrecer correcciones rápidas y prácticas para los desarrolladores, y ahora los equipos de C/C++ pueden disfrutar de esa misma experiencia. A partir de lo que comenzamos el año pasado, Snyk ahora encuentra problemas de AppSec ocultos en el código de C/C++ y verifica las licencias con las políticas de toda la organización para garantizar el cumplimiento.
También identifica aún más paquetes de código abierto, incluidos la mayoría de los que se encuentran en administradores de paquetes populares como Conan, sin necesidad de un archivo de manifiesto.
Y, por supuesto, Snyk se integra fácilmente con las herramientas que ya usas, como los IDE, para que los desarrolladores puedan encontrar y corregir problemas rápidamente antes de confirmar cambios en el código.
Compatibilidad con C/C++ para Snyk Code
El conjunto de reglas de análisis estático que lanzamos hoy beneficiará principalmente a los desarrolladores que crean aplicaciones de escritorio, servidor y web. A medida que agreguemos más reglas, también admitiremos otros tipos de aplicaciones, como las integradas y las automotrices. Snyk Code se integra fácilmente en el entorno de herramientas existente mediante complementos para IDE y analiza el código fuente directamente, sin necesidad de ejecutar un compilador.
Hoy lanzamos C/C++ en beta abierta y, durante todo el período de beta, seguiremos mejorando nuestra cobertura y nuestras capacidades. Nuestro proceso de investigación sobre la seguridad del código comienza con el análisis de cientos de miles de repositorios de código abierto. Luego, combina análisis de IA y aprendizaje automático con la experiencia de especialistas en seguridad para crear nuestra base de conocimientos de Snyk Code. El ecosistema de C/C++ no será la excepción. Los resultados mejorarán continuamente a medida que analicemos más proyectos.
La compatibilidad con C/C++ está en beta y debe activarse en la sección Snyk Settings / Preview de la interfaz web de Snyk. Durante este período de beta, necesitamos tus comentarios. Contáctanos mediante un ticket de soporte desde la aplicación para contarnos cómo funcionan las reglas en tu caso. Con gusto haremos los ajustes necesarios. En los próximos meses, Snyk aplicará su proceso de aprendizaje automático guiado por personas, único en el sector, junto con la IA simbólica, para agregar contenido y perfeccionar la base de conocimientos de C/C++ y ampliar su cobertura de problemas conocidos de C/C++.


Licencias de C/C++ para Snyk Open Source
Además de identificar paquetes de código abierto y ofrecer recomendaciones para corregir problemas, Snyk Open Source ahora ofrece visibilidad sobre las licencias de código abierto de C/C++ y las verifica según las políticas de toda la organización definidas por los equipos de seguridad y legales para garantizar el cumplimiento. Los desarrolladores recibirán orientación en tiempo real sobre las licencias permitidas según las políticas de sus empresas.
Desde la CLI, ejecuta snyk test --unmanaged en el directorio principal de tu proyecto.
Cuando agregues el parámetro adicional --unmanaged en Project Settings del complemento de Snyk —o de la extensión para CLion, Visual Studio Code u otro IDE compatible—, podrás usar esta funcionalidad directamente desde tu IDE.



C/C++: bienvenido al mundo moderno
Con la compatibilidad de Snyk AppSec con C/C++, facilitamos que los desarrolladores encuentren y corrijan problemas de seguridad mediante integraciones intuitivas y fáciles de usar, y ofrecemos a los equipos de seguridad toda la visibilidad que necesitan, desde una plataforma respaldada por inteligencia de seguridad líder en el sector.
¿El resultado?
Desarrolladores felices y productivos, gracias a:
integraciones fluidas en los flujos de trabajo de desarrollo
mensajes fáciles de entender y que permiten tomar medidas
análisis del flujo de datos sobre el código original
«El 85 % de los desarrolladores que usan Snyk lo recomiendan a otras personas y destacan el considerable ahorro de tiempo y la facilidad de uso».
Correcciones sencillas en menos tiempo, gracias al enfoque moderno de Snyk, centrado en los desarrolladores, que:
analiza el código de forma automática y continua en minutos o incluso segundos
analiza el código fuente y evita la necesidad de compilarlo
incluye controles de seguridad en todo el SDLC; por ejemplo, analiza cada verificación de PR
Visibilidad completa de los problemas de seguridad de C/C++ con capacidades como:
una base de datos líder en el sector de código abierto de C/C++, con paquetes, licencias y vulnerabilidades
identificación de paquetes de código abierto no administrados (sin administrador de paquetes) mediante huellas digitales de firmas de archivos
informes centralizados para toda la organización, en todos los productos de la plataforma, con filtros sencillos
Para ver la demostración, consulta la grabación a pedido de SnykLaunch.
Empieza a proteger tus proyectos de C/C++ hoy mismo.
Inicia una prueba gratuita y agenda una sesión con uno de nuestros expertos en seguridad para C/C++ para probar las nuevas funciones beta.



