Skip to main content

Como a Auth0 gerencia a segurança dos desenvolvedores em um cenário de rápido crescimento

Destaque do cliente

Marcin Hoppe

Senior Manager of Product Security

Setor: Tecnologia
Location: Washington, USA

Destaques:

Capacitou os desenvolvedores da Auth0 a gerenciar a segurança de forma automatizada e simples

Acompanhou o número de vulnerabilidades corrigidas a cada mês e o tempo necessário para corrigi-las

Missão principal

Marcin Hoppe é gerente sênior de segurança de produto na Auth0. Ele lidera a equipe de segurança em estreita colaboração com a engenharia para garantir que código seguro seja implementado em toda a organização. Como ele explica, o objetivo central de sua missão é ajudar os engenheiros da Auth0 a criar um produto mais seguro.

Para atingir esse objetivo, em vez de esperar que os engenheiros se tornem especialistas em segurança, Hoppe e sua equipe oferecem orientação e ferramentas fáceis de usar — incluindo o Snyk — para ajudar seus colegas desenvolvedores a antecipar a segurança. Em outras palavras, a ideia é incorporar a segurança ao ciclo de vida de desenvolvimento de software desde o início, com frequência e de forma automatizada.

Gerenciamento de dependências e mitigação de vulnerabilidades

Com uma pilha de tecnologia baseada em Node.js, que inclui naturalmente muitas bibliotecas e dependências de código aberto, a equipe de Hoppe aproveita bastante o código aberto e sabia que o gerenciamento de dependências poderia ser especialmente complexo e difícil. O foco é ter visibilidade sobre a qualidade e a segurança dos componentes de código aberto utilizados e identificar os riscos que surgirem para resolvê-los rapidamente.

Como diz Hoppe: “Minha principal preocupação é descobrir vulnerabilidades antes dos adversários ou agentes mal-intencionados, mantendo visibilidade suficiente sobre nossa cadeia de suprimentos de código aberto para entender o que estamos incorporando. Assim, podemos reagir aos riscos da maneira adequada e no momento certo.” É exatamente aí que o Snyk entra.

Por que a Auth0 escolheu o Snyk

A equipe de segurança da Auth0 percebeu desde cedo que precisava de uma solução que permitisse aos desenvolvedores gerenciar a segurança de forma automatizada e simples. Escolheram o Snyk por ser a opção mais “completa e abrangente” para ajudar a gerenciar dependências de código aberto e mitigar riscos, com ferramentas que permitem aos desenvolvedores encontrar e corrigir vulnerabilidades no código aberto automaticamente.

“A equipe da Auth0 usa Snyk para garantir que operamos sobre uma base segura, independentemente do que aconteça.”

Identificação e análise de vulnerabilidades no código

A Auth0 precisa ter visibilidade sobre as vulnerabilidades provenientes de todas as fontes. O Snyk ajuda a identificar e analisar vulnerabilidades de código aberto e a priorizar sua correção. Antes, a equipe de Hoppe usava a severidade técnica como principal métrica para decidir quais vulnerabilidades corrigir primeiro. Com o tempo, porém, percebeu que havia maneiras melhores de definir prioridades.

Por exemplo, agora a equipe analisa se um componente processa dados de clientes e se a vulnerabilidade foi identificada por uma fonte externa independente. Esses dois fatores indicam que a vulnerabilidade deve ter prioridade maior. Por outro lado, se um possível invasor tiver dificuldade para acessar determinado componente, talvez seja possível reduzir sua prioridade.

Como mencionado anteriormente, o objetivo de Hoppe é sempre descobrir vulnerabilidades antes de pessoas de fora da empresa, sejam clientes ou invasores. Mas ele não quer desacelerar as equipes de desenvolvimento nem proibi-las de usar componentes de código aberto. O Snyk ajuda a equipe a conciliar esses objetivos, identificando e gerenciando vulnerabilidades em todas as dependências de código aberto.

O Snyk verifica continuamente a divulgação de novas vulnerabilidades, e as dependências são comparadas com o abrangente banco de dados de vulnerabilidades do Snyk para fornecer informações claras e imediatas sobre a severidade e a prevalência de cada vulnerabilidade. Assim, a equipe de desenvolvimento pode encontrar e corrigir vulnerabilidades rapidamente, sem depender constantemente do suporte prático da equipe de segurança.

Como ampliar a segurança com a integração aos ambientes de desenvolvimento

Um desafio específico enfrentado pela equipe de Hoppe era que, devido às características do Node.js, as ferramentas de segurança de linha de comando podiam ser difíceis de usar. A equipe de segurança interveio e simplificou o processo para os desenvolvedores ao integrar o Snyk ao ambiente de desenvolvimento.

A Auth0 usava contêineres Docker, então a equipe de segurança incorporou ao ambiente de desenvolvimento um contêiner de segurança com o Snyk. Agora, todos os engenheiros podem executar o Snyk e obter por conta própria as informações de segurança necessárias, sem lidar com uma experiência complicada de uso de ferramentas de linha de comando. Dessa forma, a equipe conseguiu ampliar a segurança sem precisar aumentar drasticamente o tamanho da equipe de segurança — algo que pode ser bastante desafiador diante da escassez de profissionais qualificados.

Criação de processos de segurança e acompanhamento do progresso

Uma responsabilidade importante da equipe de Hoppe é criar processos de segurança e oferecer ferramentas — como o contêiner de segurança descrito acima — que facilitem o trabalho dos desenvolvedores. Sempre que identificam uma oportunidade de automatizar algum aspecto da segurança ou simplificar o uso das ferramentas, eles aproveitam.

Além disso, a equipe de Hoppe tem a tarefa de acompanhar o progresso das equipes da Auth0 que trabalham para melhorar continuamente sua postura de segurança. Atualmente, a equipe monitora o número de vulnerabilidades corrigidas por mês, quanto tempo leva para corrigi-las e quantas ultrapassaram o prazo do SLA.

Equilíbrio entre segurança e necessidades do negócio

Quase todas as organizações precisam conciliar os requisitos de segurança com as metas e necessidades do negócio. Hoppe e sua equipe trabalham em estreita colaboração com as partes interessadas para priorizar os problemas de segurança considerando os requisitos do negócio e equilibrar a necessidade de manter a segurança com a de crescer e competir no mercado.

Para os engenheiros, pode ser muito difícil tomar decisões que envolvam concessões entre segurança e negócio. Por isso, a equipe de Hoppe desempenha um papel importante na comunicação entre essas duas áreas da organização. Com ferramentas como o Snyk à sua disposição, Hoppe pode mostrar às partes interessadas do negócio que sua equipe está priorizando as correções de segurança de forma criteriosa e melhorando a postura de segurança ao longo do tempo, sem perder de vista os resultados financeiros.

Operando sobre uma base segura

A segurança é parte essencial da Auth0, por isso faz sentido que a empresa valorize a importância de manter visibilidade sobre sua postura de segurança e de buscar melhorias contínuas. Com o apoio da parceria com o Snyk, a Auth0 conseguiu equilibrar as necessidades do negócio com os requisitos de segurança e continua aprimorando sua postura à medida que adota abordagens modernas de segurança em toda a organização.

/about/ Auth0

Em um mundo marcado por vazamentos de dados constantes, a Auth0 oferece uma plataforma universal de autenticação e autorização para aplicativos web, móveis e legados. Com recursos como logon único, autenticação multifator e login universal, a Auth0 ajuda as organizações a manter a segurança e simplifica os processos de gerenciamento de identidade e acesso.

A Auth0 está em uma fase de rápido crescimento e aprendeu que pode ser desafiador expandir a equipe de segurança no mesmo ritmo da equipe de engenharia. Por isso, quanto mais a empresa puder ajudar as equipes de engenharia a cuidar da própria segurança, melhor. Esse é um dos principais motivos pelos quais a Auth0 adotou o Snyk: a plataforma permite que desenvolvedores sem experiência aprofundada em segurança integrem facilmente práticas recomendadas, como a análise de vulnerabilidades, aos fluxos de trabalho e às ferramentas de desenvolvimento que já utilizam.