Misión principal
Marcin Hoppe es gerente sénior de seguridad de productos en Auth0. Dirige al equipo de seguridad y colabora estrechamente con ingeniería para garantizar que se implemente código seguro en toda la organización. Como él explica, el eje de su misión es ayudar a los ingenieros de Auth0 a crear un producto más seguro.
Para lograr este objetivo, en lugar de esperar que los ingenieros se conviertan en expertos en seguridad, Hoppe y su equipo ofrecen orientación y herramientas fáciles de usar —incluido Snyk— para que sus colegas de desarrollo puedan integrar la seguridad desde el inicio; es decir, incorporarla al ciclo de vida del desarrollo de software de forma temprana, frecuente y automatizada.
Gestión de dependencias y mitigación de vulnerabilidades
Como su stack tecnológico se basa en Node.js, que incluye de forma inherente muchas bibliotecas y dependencias de código abierto, el equipo de Hoppe suele aprovechar el código abierto y sabía que la gestión de dependencias podía ser especialmente frecuente y difícil de manejar. Se enfocan en obtener visibilidad sobre la calidad y la seguridad de los componentes de código abierto que utilizan, y quieren poder detectar los riesgos que surjan y abordarlos rápidamente.
Como dice Hoppe: «Mi principal preocupación es descubrir vulnerabilidades más rápido que los adversarios o actores maliciosos, y mantener suficiente visibilidad sobre nuestra cadena de suministro de código abierto para entender qué estamos incorporando. Así, podemos responder a los riesgos de manera adecuada y oportuna». Ahí es exactamente donde entra Snyk.
Por qué Auth0 eligió Snyk
El equipo de seguridad de Auth0 se dio cuenta desde el principio de que necesitaba una solución que permitiera a sus desarrolladores gestionar la seguridad de forma automatizada y sencilla. Eligieron Snyk porque era la opción más «completa e integral» para ayudarlos a gestionar dependencias de código abierto y mitigar riesgos, con herramientas que permiten a los desarrolladores encontrar y corregir automáticamente vulnerabilidades en código abierto.
«El equipo de Auth0 usa Snyk para asegurarse de que operamos sobre una base segura, pase lo que pase».
Identificación y análisis de vulnerabilidades en el código
Auth0 necesita visibilidad sobre las vulnerabilidades que provienen de todas las fuentes. Snyk los ayuda a identificar y analizar vulnerabilidades de código abierto y a priorizar su resolución. Antes, el equipo de Hoppe usaba la gravedad técnica como principal métrica para decidir qué vulnerabilidades resolver primero. Sin embargo, con el tiempo se dieron cuenta de que había mejores formas de establecer prioridades.
Por ejemplo, ahora el equipo analiza si un componente procesa datos de clientes y si una fuente externa de terceros identificó la vulnerabilidad. Ambos factores indican que se trata de una vulnerabilidad de mayor prioridad. Por otro lado, si a un posible atacante le resulta difícil acceder a un componente en particular, quizá se pueda reducir su prioridad.
Como ya mencionamos, el objetivo de Hoppe siempre es descubrir vulnerabilidades antes que personas externas, ya sean clientes o atacantes. Sin embargo, no quiere ralentizar a sus equipos de desarrollo ni impedirles usar componentes de código abierto. Snyk ayuda al equipo a equilibrar estos objetivos al identificar y gestionar vulnerabilidades en todas las dependencias de código abierto.
Snyk busca continuamente vulnerabilidades recién divulgadas y analiza las dependencias con su completa base de datos de vulnerabilidades para ofrecer información clara e inmediata sobre la gravedad y la prevalencia de cada vulnerabilidad. De esta manera, el equipo de desarrollo puede encontrar y corregir vulnerabilidades rápidamente sin depender de la intervención frecuente del equipo de seguridad.
Ampliar la seguridad mediante la integración con entornos de desarrollo
Un desafío concreto que encontró el equipo de Hoppe fue que, debido a las características de Node.js, puede ser difícil usar herramientas de seguridad de línea de comandos. El equipo de seguridad intervino y simplificó el proceso para los desarrolladores al integrar Snyk en su entorno de desarrollo.
En concreto, Auth0 usaba contenedores Docker, así que el equipo de seguridad incorporó directamente al entorno de desarrollo un contenedor de seguridad con Snyk. Ahora, cada ingeniero puede ejecutar Snyk y obtener por su cuenta la información de seguridad que necesita, sin tener que lidiar con una experiencia de usuario complicada en torno a las herramientas de línea de comandos. De esta forma, el equipo ha podido ampliar la seguridad sin aumentar drásticamente el tamaño de su equipo de seguridad, algo que puede ser realmente difícil debido a la escasez de talento.
Creación de procesos de seguridad y medición del progreso
Una responsabilidad importante del equipo de Hoppe es crear procesos de seguridad y ofrecer herramientas —como el contenedor de seguridad descrito anteriormente— que faciliten el trabajo de los desarrolladores. Siempre que encuentran una oportunidad para automatizar algún aspecto de la seguridad o facilitar el uso de las herramientas, la aprovechan.
Además, el equipo de Hoppe tiene la tarea de medir el progreso de los equipos de Auth0 que trabajan para mejorar su postura de seguridad con el tiempo. Actualmente, su equipo registra la cantidad de vulnerabilidades que se resuelven cada mes. También mide cuánto tardan en resolverse y cuántas incumplieron el SLA.
Equilibrar los requisitos de seguridad y del negocio
Prácticamente todas las organizaciones deben encontrar un equilibrio entre los requisitos de seguridad y los objetivos y necesidades del negocio. Hoppe y su equipo trabajan estrechamente con las partes interesadas del negocio para priorizar los problemas de seguridad frente a los requisitos comerciales y equilibrar la necesidad de mantener la seguridad con la de crecer y competir en el mercado.
Para los ingenieros, puede ser muy difícil tomar decisiones que impliquen concesiones entre seguridad y negocio, por lo que el equipo de Hoppe cumple una función importante de enlace entre estas dos áreas de la organización. Con herramientas como Snyk a su disposición, Hoppe puede demostrar a las partes interesadas del negocio que su equipo prioriza de manera inteligente las correcciones de seguridad y mejora su postura de seguridad con el tiempo, sin perder de vista los resultados financieros.
Trabajar sobre una base segura
Auth0 es una empresa que lleva la seguridad en su esencia, por lo que es lógico que haya adoptado la importancia de mantener la visibilidad sobre su postura de seguridad y enfocarse en la mejora continua. Gracias a su alianza con Snyk, Auth0 ha logrado equilibrar las necesidades del negocio con los requisitos de seguridad y sigue fortaleciendo su postura mientras adopta enfoques de seguridad nuevos y modernos en toda la organización.