Cómo REI creó una cultura DevSecOps y cómo Snyk le ayudó
Brian Piper
27 de febrero de 2024
0 minutos de lecturaHace unos años, REI emprendió su transformación digital y su migración a la nube, trasladando sus entornos de desarrollo locales a AWS. Sin embargo, cuando los equipos de desarrollo de REI comenzaron esta transición, sus colegas de seguridad notaron que la seguridad de las aplicaciones simplemente no avanzaba al mismo ritmo. Como resultado, REI emprendió otro camino: identificar las herramientas de seguridad adecuadas y los cambios culturales necesarios para que AppSec tuviera éxito.
Dan Ngo, ingeniero líder de seguridad en Ingeniería de Ciberseguridad y Gestión de Riesgos de REI, y Clinton Herget, CTO de campo en Snyk, conversaron en una sesión de AWS Re:Invent 2023 sobre cómo el equipo de REI creó una sólida cultura de seguridad en sus equipos de desarrollo. Sigue leyendo para conocer su historia y ver el video completo a continuación.
La decisión de REI de establecer un programa de AppSec
Cuando Dan llegó a REI, la empresa atravesaba una transformación digital que incluía una migración a la nube. En ese momento, la seguridad estaba mayormente aislada de los flujos de trabajo de los desarrolladores y se enfocaba en otros aspectos, como los endpoints o la seguridad del correo electrónico. Había algunas iniciativas de seguridad de aplicaciones, pero consistían principalmente en que los distintos equipos de desarrollo adoptaran enfoques diferentes para proteger sus aplicaciones. Estos equipos dependían sobre todo de algunos referentes de seguridad que tomaban la iniciativa. Sin embargo, estos referentes tenían distintos niveles de experiencia en prácticas de seguridad, lo que generaba inconsistencias en toda la organización.
Cuando Dan llegó, les preguntó a los desarrolladores qué hacían en materia de seguridad. Le contaron que usaban algunas herramientas para generar informes de seguridad, pero que casi no revisaban los resultados.
Según Dan: «Había algunos ingenieros y desarrolladores con mentalidad de seguridad que implementaban análisis de seguridad por motivos de cumplimiento. Pero en realidad no obtenían ningún beneficio de ello».
Dan y su equipo debían establecer una sólida base de seguridad que creciera junto con sus iniciativas de modernización de aplicaciones. Sabían que esta base debía incluir la combinación adecuada de herramientas, cultura y procesos. Su objetivo final era desplazar la seguridad hacia las primeras etapas del desarrollo e involucrar a desarrolladores e ingenieros en sus iniciativas de seguridad, para adoptar un enfoque DevSecOps en toda la organización.
Cómo usa REI las herramientas de Snyk
Como parte de su iniciativa para establecer relaciones sólidas con otros equipos, el equipo de Dan sabía que debía elegir las herramientas adecuadas para detectar y corregir vulnerabilidades. Después de probar distintas herramientas, eligieron Snyk. A los desarrolladores les gustó la visibilidad de las vulnerabilidades de código abierto con Snyk Open Source y las sugerencias para corregir el código con Snyk Code. El equipo de ingeniería de plataformas también prefirió Snyk porque se integraba mejor con las herramientas existentes de REI y con el entorno de nube de AWS subyacente.
Consejos de REI para crear una cultura DevSecOps
Al fomentar esta colaboración entre ingeniería y desarrollo, el equipo de Dan descubrió algunas tácticas que funcionaban y otras que no. Finalmente, necesitaban atravesar una transformación cultural para obtener el apoyo y los resultados de seguridad que buscaban.
Estos son tres de los aprendizajes más importantes de la experiencia de Dan al desarrollar esta cultura con las herramientas de Snyk.
Comprende a fondo las prioridades de otros equipos y genera confianza
Al comienzo de su proceso de seguridad, REI intentó implementar rápidamente un nuevo producto de análisis estático de código sin tomarse el tiempo para comprender la perspectiva de los desarrolladores. La implementación no fue bien recibida. Dan comentó que los desarrolladores se resistieron a la herramienta porque no se integraba con sus pipelines existentes. Esto generó mucha fricción entre ambos equipos.
Después de recopilar comentarios, el equipo de Dan se dio cuenta de que debía colaborar con los equipos de desarrollo e ingeniería, no ir en su contra, y respetar sus flujos de trabajo existentes. Analizaron en detalle las plataformas y los equipos existentes de REI y luego buscaron adoptar herramientas y procesos que funcionaran en conjunto con ellos.
Para comprender de verdad la perspectiva de estos otros equipos, Dan pasó gran parte de su tiempo trabajando integrado en el equipo de ingeniería de confiabilidad del sitio y aprendiendo sobre sus procesos y prioridades.
«Contribuí al código, aprendí cómo funcionan los microservicios y cómo trabajaban los ingenieros de infraestructura. A partir de ahí, construimos una relación de confianza y luego empecé a presentarles más conceptos de seguridad».
Adopta la mejora continua
A lo largo de la conversación, Dan mencionó varias ocasiones en las que su equipo probó algo nuevo, cometió algunos errores y aprendió de ellos. En lugar de esperar la perfección desde el principio, su equipo optó por empezar y mejorar los procesos con el tiempo.
Como ejemplo de su enfoque de mejora continua, su equipo decidió ofrecer horarios de consulta cuando presentó Snyk. Gracias a estas conversaciones abiertas y a las alertas de Snyk, descubrieron que los propios desarrolladores no podían corregir muchos de los hallazgos de los análisis de seguridad. De hecho, esas vulnerabilidades formaban parte de una biblioteca llamada CRAMPON, mantenida por el equipo de ingeniería de plataformas. Algunos desarrolladores usaban versiones obsoletas de este framework. Como resultado, el equipo de Dan pudo introducir mejoras.
«Ahora tenemos una política de obsolescencia», dijo Dan. «Tenemos un SLA. También estamos trabajando para definir cuál es la versión mínima del framework CRAMPON y comunicarla a los desarrolladores, para que sepan que deben usar una versión mínima específica de nuestras herramientas internas».
Identifica quién debe hacerse cargo de las correcciones y asígnalas
Como parte de su enfoque integral y práctico de AppSec, Dan también quería encontrar formas de gestionar el código heredado. Para ellos, la clave era definir claramente qué equipos eran responsables de cada componente de software heredado.
Al dividir la mayor parte de su monolito, el equipo pudo determinar quién era responsable de la mayor parte del código heredado. Snyk les ayudó a identificar las dependencias. Ahora, el equipo de seguridad puede ver claramente quién es responsable de cada parte del código y coordinar las correcciones con los grupos adecuados. Para el código y los servicios restantes que aún forman parte del monolito heredado y no tienen responsables claramente definidos, el equipo de seguridad aborda directamente los problemas de seguridad relacionados con Snyk. Esto genera respeto entre los desarrolladores y los anima a revisar los problemas por su cuenta.
Los logros de REI en seguridad de aplicaciones
Gracias a sus procesos y a las herramientas que eligieron, Dan y su equipo ahora tienen una relación mucho más colaborativa con los equipos de desarrollo e ingeniería de plataformas. Mientras siguen madurando el programa, Dan dijo que su principal objetivo es garantizar que los desarrolladores puedan contextualizar y comprender las vulnerabilidades de las aplicaciones, y luego priorizar e implementar las correcciones dentro de los SLA definidos por REI, especialmente el tiempo medio de corrección (MTTF). Snyk le ayuda a alcanzar este objetivo al detectar vulnerabilidades en las primeras etapas del pipeline y ofrecer a los desarrolladores recursos para corregirlas rápidamente.
«Ver que los desarrolladores implementan una corrección en nuestra aplicación porque Snyk indicó que había un problema es una muy buena señal de que vamos por buen camino hacia un proceso sólido y una buena relación de confianza entre los equipos de seguridad y desarrollo».
Mira la presentación de AWS Re:Invent a continuación para conocer más sobre nuestra colaboración con REI. Si quieres probar la plataforma de seguridad de Snyk, diseñada para desarrolladores, también puedes crear una cuenta gratuita de Snyk directamente desde AWS Marketplace o directamente desde la aplicación de Snyk.
Video: AWS re:Invent 2023 - Cómo REI creó una cultura DevSecOps desde el inicio




