A trajetória da Snyk em AppSec em 2022
Jason Lane
Frank Fischer
11 de janeiro de 2023
0 minutos de leituraDepois de um fim de 2021 turbulento e intenso, com o Log4Shell na cabeça de todos, a Snyk começou o ano com tudo e passou a oferecer novos recursos ao mundo de AppSec, que não decepcionaram. Neste artigo, você vai conhecer a maioria dos principais investimentos que fizemos em 2022 para melhorar o desempenho, adicionar novos ecossistemas e atender às necessidades das empresas.
Escala, desempenho e disponibilidade
A Snyk cresceu muito! Em 2022, tivemos um aumento de mais de 600% no número de projetos protegidos pelo Snyk Code e de 500% nos projetos monitorados pelo Snyk Open Source. Agradecemos por confiar à Snyk a segurança das suas aplicações. Essa confiança nos dá energia para seguir em frente.
A Snyk continua crescendo exponencialmente. Em 2022, tomamos medidas para nos preparar para esse crescimento. Por exemplo, reformulamos o mecanismo usado pelo Snyk Code para se comunicar entre o cliente e o mecanismo de análise. Em princípio, o mecanismo de análise consiste em duas partes: um servidor de arquivos, que reúne todos os arquivos necessários do repositório na versão que será analisada, e um servidor de análise, que transmite os arquivos do servidor de arquivos e retorna os resultados da análise. O Snyk Code é extremamente rápido, mas a maior parte do tempo de uma análise é consumida pela primeira etapa desse processo. Qualquer otimização nessa etapa traz benefícios diretos para quem usa a ferramenta.
Aprimoramos a arquitetura do servidor de arquivos e a colaboração entre os servidores de arquivos e de análise para melhorar o desempenho e a estabilidade. Por exemplo, monorepositórios grandes — aplicações mantidas em um único repositório de grande porte — são um desafio para sistemas SAST, pois é preciso copiar grandes volumes de dados para realizar uma análise relevante. A nova versão do mecanismo do Snyk Code trouxe melhorias importantes e consegue analisar com rapidez e precisão até os maiores monorepositórios. E tem mais: para aproveitar o novo mecanismo do Snyk Code, você não precisa fazer nada. Ele será usado automaticamente daqui em diante.
Outra novidade interessante é que o novo mecanismo do Snyk Code faz análise entre arquivos, mesmo quando há mais de dois. O Snyk Code consegue acompanhar o fluxo de dados de uma aplicação por vários arquivos e detectar problemas que abrangem grandes partes dela. Isso é especialmente importante para quem trabalha com linguagens como C# e Java, que costumam usar arquivos profundamente aninhados.
O Snyk Code já revolucionou o mundo de SAST, sendo de 10 a 50 vezes mais rápido que outras ferramentas. Essas otimizações e melhorias no mecanismo feitas em 2022 continuam evoluindo o Snyk Code e levando todo o potencial dos recursos SAST da Snyk aos desenvolvedores em todas as etapas do ciclo de vida de desenvolvimento de software (SDLC).
Há mais recursos sendo desenvolvidos com base nesse novo mecanismo, que serão lançados em 2023. Mas essa novidade já é um presente para começar bem o próximo ano. Fique de olho.
Novos ecossistemas
Maven
Em março, lançamos uma nova versão do mecanismo de resolução de dependências para projetos Maven SCM, que melhorou significativamente a precisão do grafo de dependências detectado pela Snyk em projetos Maven importados do Git. Os usuários passaram a ver pacotes e versões mais precisos em seus projetos Maven. Isso faz diferença, por exemplo, ao usar frameworks como Spring Boot e Jackson, que utilizam dependencyManagement em arquivos POM do Bill of Materials para gerenciar versões. Além disso, o novo resolvedor é mais eficiente que o método anterior: os projetos devem ser testados mais rapidamente e com uma chance muito menor de atingir o tempo limite.
C/C++
Abril foi um mês empolgante para o Snyk Open Source: concluímos a primeira integração técnica resultante da aquisição da FossID, realizada no ano anterior. Com essa aquisição, adicionamos a capacidade de encontrar bibliotecas de código aberto não gerenciadas em C e C++. Essa é a primeira de muitas novidades para esse ecossistema, mas já começamos a causar impacto na interseção entre software e hardware, área em que essas linguagens são usadas principalmente. Elas são a base da maioria das aplicações, e mais de 6 milhões de desenvolvedores programam com elas todos os dias. Também adicionamos suporte à análise de dependências de C e C++ pela maioria das integrações existentes com IDEs, incluindo JetBrains, Visual Studio Code e Visual Studio. Isso é essencial para quem quer encontrar e corrigir problemas de segurança antes mesmo de enviar o código para a branch.
Nexus
Em julho, a equipe do Snyk Open Source lançou uma integração com o Nexus Repository Manager 3.x. Em termos de funcionalidade, essa nova integração é semelhante à integração anterior com o Artifactory. Depois de configurada, ela permite que a Snyk resolva todas as dependências diretas e transitivas dos pacotes hospedados no Nexus ao testar projetos Maven importados do Git, gerando grafos de dependências mais completos e precisos. A Snyk também usa essa integração para acessar dependências privadas ao criar solicitações de pull/merge e atualizar arquivos de lock do npm/yarn com as URLs corretas. A integração está disponível nos planos Enterprise.
Gradle
Embora 33% dos usuários da Snyk já testassem projetos com Gradle 7 com sucesso, ainda não oferecíamos suporte oficial — até agora. O Snyk Open Source agora oferece suporte oficial ao Gradle 7 (e a todas as versões secundárias) na Snyk CLI. Agora, os clientes podem executar com confiança snyk test e snyk monitor nesses projetos e ter uma visão completa das dependências, vulnerabilidades e licenças em uso.
Go
Em setembro, melhoramos significativamente a taxa de correspondência de licenças no Snyk Open Source para análises da CLI em Go. Agora, os clientes encontram muito menos dependências sem informações de licença: em vez disso, as dependências recebem a licença correta. O nível de melhoria varia de projeto para projeto. Em um projeto de código aberto em Go que testamos, a cobertura de licenças em uma análise pela CLI passou de 6% das dependências para 93%. Esse é um grande avanço para o ecossistema.
E tem mais por vir
Em 2022, ampliamos o suporte do Snyk Code para comunidades como PHP, Go, Ruby e APEX. Adicionamos linguagens à versão beta fechada do Snyk Code e estamos trabalhando com os clientes selecionados para o programa. Também preparamos outras linguagens para entrar em beta fechada em breve. Temos uma longa lista de novas linguagens e ecossistemas que devem ficar disponíveis ao público em geral em 2023. No Snyk Code, usamos aprendizado de máquina orientado por especialistas, com base em um conjunto de treinamento de 120 mil a 150 mil projetos de código aberto por linguagem. Aprendemos com o conhecimento da comunidade global de código aberto.
Snyk AppSec para empresas
Outro foco da Snyk em 2022 foi atender a grandes ambientes corporativos. O tamanho e a diversidade das tecnologias, das condições e da idade dos projetos representam desafios tanto para desenvolvedores e profissionais de segurança quanto para as lideranças.
Além dos novos ecossistemas e das melhorias mencionados acima, nossa equipe de plataforma também trabalhou para tornar a Snyk incrivelmente fácil de usar e implementar, com uma nova experiência para usuários, recursos avançados de geração de relatórios e opções de implantação em instância dedicada, dando superpoderes de AppSec aos nossos clientes corporativos.
O Snyk Code também chegou ao ambiente corporativo. Para dar um exemplo, estabelecemos e quebramos recordes internos continuamente no número de projetos que conseguimos importar automaticamente para o Snyk Code de uma só vez, à medida que ambientes de clientes cada vez maiores eram integrados. Estamos falando de bem mais de 20 mil em uma única noite. Um cliente nos contou que tentou implementar uma solução SAST alternativa durante seis meses. Não conseguiu configurar a análise automática de nenhum projeto, desistiu e veio conversar conosco.
Para os clientes corporativos, as mudanças no Code Agent e no Snyk Broker foram importantes. O Code Agent é um componente que permite ao Snyk Broker conectar sistemas de gerenciamento de versões de código hospedados localmente ao SaaS da Snyk. Para grandes organizações com seu próprio sistema de gerenciamento de código-fonte, essa é uma maneira rápida, simples e segura de usar o Snyk Code como SaaS, sem instalar e manter servidores locais.
Além disso, os dados do Snyk Code agora estão disponíveis nos relatórios. Você pode analisar em detalhes CWEs específicos em seus projetos para descobrir quando foram introduzidos ou, com um simples clique, acessar o arquivo de origem.

Por fim, mas não menos importante, um tema em que trabalhamos durante todo o ano de 2022 foi a segurança da cadeia de suprimentos de software. O Snyk Open Source ampliou seu trabalho de longa data para ajudar desenvolvedores a encontrar e corrigir problemas nas dependências de código aberto e lançou suporte à criação e análise de formatos modernos de SBOM, como CycloneDX e SPDX.
O que vem por aí em 2023
Como você pode ver, muitos recursos novos ampliaram a atuação da Snyk em AppSec. Temos orgulho de responder rapidamente às solicitações dos clientes, e a lista acima é uma prova disso. Temos um roteiro robusto e desafiador para 2023. Vamos continuar investindo nas iniciativas iniciadas em 2022, como C/C++ e o segmento corporativo. Também temos novidades no radar para manter a Snyk como a parceira de segurança de aplicações inovadora, ágil e confiável que é hoje, porque o mundo da cibersegurança não para.
As equipes por trás da solução AppSec da Snyk — pesquisa, desenvolvimento, engenharia de segurança, gerenciamento de produtos, suporte, tecnologia de campo, vendas e marketing — agradecem pela confiança na Snyk e pelo feedback valioso que você nos deu. Desejamos a você um 2023 de muito sucesso e sem incidentes de segurança. Estaremos aqui para ajudar você a tornar isso realidade.
