El desafío: automatizar un proceso lento de revisión de seguridad de OSS
Salesforce es una empresa global de software que desarrolló la plataforma de gestión de relaciones con clientes (CRM) líder en el mundo. La plataforma permite que las empresas unifiquen los datos de marketing, ventas, comercio, servicios y TI para obtener una visión de 360 grados de sus clientes. Salesforce también crea aplicaciones empresariales para automatización de marketing, análisis, desarrollo de aplicaciones y mucho más.
Como empresa innovadora de software, Salesforce cree en contribuir a la comunidad mediante el software de código abierto (OSS). Sin embargo, cada vez que un empleado o equipo quiere publicar su trabajo como código abierto, debe enviar una solicitud de OSS que pasa por revisiones de seguridad, legales y de muchos otros requisitos. Con alrededor de veinte solicitudes de OSS al mes, este proceso manual para revisar informes de análisis estático y corregir los hallazgos estaba generando un cuello de botella para publicar su OSS.
«Como saben, las revisiones manuales requieren mucho tiempo», afirmó Amol Deshpande, ingeniero de seguridad de productos en Salesforce. «Los ingenieros de seguridad tienen múltiples responsabilidades y resulta muy difícil realizar numerosas revisiones cada mes, sobre todo cuando las solicitudes tienen plazos ajustados. Pensamos que podíamos automatizar este proceso para ahorrarles algo de tiempo a los ingenieros».
La solución: implementar análisis de seguridad plug-and-play
Para agilizar su proceso de revisión de seguridad de OSS, Salesforce decidió crear un marco de seguridad plug-and-play que aprovecha Snyk para realizar análisis de seguridad y recopilar automáticamente los resultados. Cada solicitud de revisión crea un ticket en su plataforma interna de seguimiento de tareas. Un webhook lo recoge y lo agrega a una cola en RabbitMQ.
Luego, Snyk, gracias a su sólida API, puede extraer los elementos de esta cola, analizar los repositorios de código adjuntos en busca de vulnerabilidades y enviar informes de los hallazgos al ticket original. Los resultados del análisis están disponibles para los ingenieros directamente en los tickets, sin necesidad de que usen herramientas de análisis de seguridad. Así, los ingenieros de seguridad pueden revisar de inmediato los informes de hallazgos para aprobar las solicitudes o corregir cualquier problema en cuestión de minutos.
«Cuando llega un ingeniero, los informes de vulnerabilidades ya están adjuntos al ticket», explicó Deshpande. «Así puede revisar el informe y aprobar la solicitud, o colaborar con los equipos de ingeniería para corregir los hallazgos. Esto les ahorra mucho tiempo a los ingenieros, porque no tienen que ejecutar los análisis ni aprender a usar las herramientas de seguridad».
Análisis de seguridad de Snyk Open Source
Al publicar software como código abierto, el análisis de seguridad es esencial para reducir el riesgo para la propia organización. Esto se debe a que los actores maliciosos pueden revisar el código disponible públicamente para preparar ataques contra aplicaciones propietarias que dependen del OSS. Componentes de OSS de uso extendido, como Apache Struts, Tomcat y OpenSSL, ya se han visto comprometidos, y la cantidad de vulnerabilidades de OSS sigue creciendo. Salesforce no quería poner en riesgo su reputación ni exponerse a ataques al publicar OSS con vulnerabilidades.
«El software de código abierto es uno de los vectores de ataque más importantes porque, cuando se detecta una vulnerabilidad en un componente de OSS, todas las aplicaciones y el software que lo usan también están en riesgo», explicó Deshpande. «De hecho, las vulnerabilidades de OSS se duplicaron en 2019 en comparación con el año anterior, por lo que la amenaza sigue aumentando».
La solución de administración de seguridad de código abierto de Snyk ayuda a las organizaciones a gestionar este riesgo de seguridad al detectar vulnerabilidades tanto en el código de código abierto que incorporan como en el que planean publicar para la comunidad. Snyk ofrece orientación práctica para corregir los problemas de seguridad detectados. También ayuda a los desarrolladores a ahorrar tiempo al corregirlos, ya que los prioriza según su gravedad e impacto potencial. Ahora Salesforce puede usar los resultados de los análisis de Snyk no solo para reducir su exposición interna a las amenazas de seguridad, sino también para garantizar que el público pueda usar sus componentes de OSS con confianza.
«Promuevo la automatización y desplazar la seguridad hacia la izquierda», dijo Deshpande, «y creo que Snyk es una de las herramientas más importantes para ampliar el alcance del trabajo de seguridad en toda una organización. En el futuro, esperamos ampliar nuestra implementación para aprobar automáticamente las solicitudes cuando los informes no detecten hallazgos y extender por toda la organización nuestro nuevo marco de análisis, impulsado por Snyk, para unificar nuestra metodología de seguridad».
El impacto: ahorrar cientos de horas de trabajo manual
Con su nuevo marco de análisis de seguridad impulsado por Snyk, el equipo de seguridad de productos de Salesforce ya no necesita revisar manualmente las solicitudes de OSS. Antes, cada solicitud podía tardar horas en completarse, pero ahora los resultados de los análisis de Snyk se publican automáticamente en los tickets de revisión. Por eso, los ingenieros de seguridad pueden dedicar casi 150 horas a otros proyectos de seguridad de alto impacto. Esto significa que Salesforce puede publicar su software de OSS mucho más rápido que antes, sin comprometer la seguridad.
«Antes, cada solicitud podía tardar horas en completarse, pero ahora los resultados de los análisis de Snyk se publican automáticamente en los tickets de revisión».