Escolar Documentos
Profissional Documentos
Cultura Documentos
Bernardo Alves, Dalton Albeche, Eduardo Tavares, Guilherme Bohm, Henrique Knack, Inacio
Pimentel, Lucas Matos, Murilo Silva, Ruan Necker, Stefano Carraro, Vicenzo Frusciante
Escola Politécnica - Pontifícia Universidade Católica do Rio Grande do Sul (PUCRS)
Porto Alegre -RS – Brasil
Abstract. This abstract provides an overview of the article on the Snyk platform.
Snyk's primary aim is to enhance software security during development by detecting
and assisting in real-time vulnerability remediation, along with generating
comprehensive security reports. The tool supports multiple programming languages
and seamlessly integrates with version control and CI/CD tools. Snyk effectively
reduces vulnerability resolution times, expedites software releases, and fosters a
culture of security within organizations.
Resumo. Este resumo cobre o conteúdo do artigo sobre a plataforma Snyk. O
principal objetivo da Snyk é melhorar a segurança durante o desenvolvimento de
software, detectando e auxiliando na correção de vulnerabilidades em tempo real e
gerando relatórios de segurança detalhados. A ferramenta suporta múltiplas
linguagens de programação de integra-se facilmente com ferramentas de controle de
versão e CI/CD. Snyk reduz o tempo de tratamento de vulnerabilidades, acelera
lançamentos de software e promove a cultura de segurança em sua organização.
1. Introdução
A crescente complexidade das aplicações de software e a evolução contínua das ameaças
cibernéticas tornaram a segurança do software uma prioridade inegável no mundo do
desenvolvimento. Este artigo fornece uma introdução abrangente à plataforma Snyk, uma
ferramenta que se diferencia no espaço de segurança de software por fornecer soluções
inovadoras para desafios de segurança.
2. Objetivos e Escopo
Para se termos uma maior compreensão acerca do impacto da Snyk, é necessário conhecermos
o propósito para qual ele foi desenvolvido, da mesma forma que o público que visa atingir.
2.1. Objetivos
A plataforma Snyk tem como seu principal objetivo incluir um maior cuidado com questões de
segurança durante o próprio processo de desenvolvimento de um software. Ela se propõe a
analisar e auxiliar na correção de falhas, de forma efetiva e eficaz, contribuindo com a adoção
de um modelo DevSecOps.
Para isso, o programa apresenta um robusto leque de operações visando o
aperfeiçoamento da aplicação, trazendo detectação de falhas em tempo real, uma priorização
dentre essas falhas e geração de relatórios sobre a confiabilidade do programa. Snyk busca
resolver estes problemas de forma ágil, trazendo assim orientações aos desenvolvedores de
como resolver certos problemas de segurança, assim como integrações com as principais
ferramentas de controle de versionamento e de CI/CD.
Dessa forma, a plataforma consegue com excelência reduzir o tempo e o custo de
tratamento de vulnerabilidades, acelerar a entrada do software no mercado e promover uma
mentalidade de segurança em toda a organização, cumprindo seus principais objetivos.
2.2. Escopo
Segundo o site da própria plataforma, a Snyk deve ser utilizado por aqueles que são
responsáveis pela proteção do código, incluindo os desenvolvedores e equipes de DevOps e
AppSec, mas também para todos aqueles que se perguntam se o software está seguro para
disponibilizá-lo ao mundo.
De uma forma mais simples, a Snyk abrange uma alta variedade de públicos,
capacitando-os a fortalecer a segurança em suas aplicações, se tornando uma ferramenta
preciosa para os dias atuais.
3. Descrição da Ferramenta
A Snyk é uma ferramenta valiosa na parte da segurança do código-fonte, ao executá-la ela fica
encarregada de procurar problemas de segurança presentes no seu código e sugerir métodos de
corrigi-las. Ela é capaz de suportar as mais diversas linguagens de programação utilizadas no
mercado como Java, Python, Ruby, JavaScript e entre outros.
Sua função mais notável é a de procurar dentro de bibliotecas e outras dependências
importadas para o código, se há alguma vulnerabilidade conhecida para poder então avisar o
usuário da falha.
Além disso a Snyk também pode ser integrado no fluxo de trabalho, funcionando
harmonicamente junto com controladores de versão como Git. Essa integração se faz valiosa,
pois a partir do momento que ela ocorre a Snyk fica trabalhando proativamente para garantir
que a segurança do código seja um hábito da equipe de desenvolvimento.
Por último, no quesito informação, a Snyk desempenha um ótimo papel, sendo
responsável pela geração de relatórios detalhados de segurança, que são responsáveis por
agrupar todas as falhas ou vulnerabilidades presentes no código, destacando quais áreas dele
precisam de mudanças, fornecendo um material muito bem detalhado e de alto valor para a
equipe de segurança.
Por estas funcionalidades, além de outros detalhes, que a ferramenta Snyk é uma
excelente peça para uma equipe de desenvolvimento, já que ajuda a manter o código seguro de
um modo que não gere tantas preocupações para a equipe.
4. Benefícios e vantagens
Não é segredo para ninguém que a plataforma tem suas funções principais no meio de
segurança. A questão a ser exposta é: quais são as suas reais vantagens? Por que preferir a Snyk
a qualquer outro software? A Snyk tem diversos benefícios, que serão tratados a seguir.
4.1. Benefícios
As ameaças cibernéticas têm se tornado cada vez mais comuns. Criminosos tiram proveito de
vulnerabilidades em pacotes de código aberto para realizar ataques em várias organizações que
estão usando o mesmo código-fonte não seguro em suas aplicações. Diante disso, a plataforma
prova sua importância no meio informático quando automatiza esse processo, de forma que
fique cada vez mais fácil para o time de segurança acompanhar o time de desenvolvimento de
um software.
As análises providas pela Snyk são de suma importância, dessa forma uma equipe
consegue analisar qual ação deve ser tomada com o fim de garantir a segurança da aplicação.
Esses fatores acabam diminuindo o custo de trabalho de uma empresa, além de assegurar que
nada irá passar batido.
4.2. Vantagens
Além de ser um dos poucos softwares que tem a capacidade de limpar códigos indevidos, é um
dos melhores no mercado por ser um diferencial em seu meio. Identificar possíveis análises
para códigos, analisar dependências de biblioteca e suportar várias linguagens de código, tudo
isso sem ao menos mudar ou interromper o workflow de um projeto, é estabelecer seu lugar
em meio aos grandes, conquistando a confiança dos programadores.
Outro importante detalhe é sua capacidade de categorizar o nível de vulnerabilidade
entre alto, médio e baixo, priorizando os níveis mais altos, de forma a auxiliar na organização
de quem está mexendo naquele código.
4.3. Desvantagens
Mesmo sendo uma ferramenta valiosa no quesito segurança de código, esta também não escapa
de pontos negativos que também devem ser citados. Todo programador que pretende usar essa
plataforma deve ter o conhecimento delas, auxiliando a tomar a sua decisão sobre qual meio
utilizar para solucionar certo problema. Dessa forma, absorvendo o melhor que a Snyk tem a
oferecer.
Além de problemas que afetam apenas alguns usuários, como seu custo e a
complexidade no início, as mensagens dadas pelo aplicativo poderiam ser melhores, de forma
que indicassem melhor onde a força de trabalho deve reforçar suas ações.
É claro que foi explícito desde o começo desses tópicos, mas destacar a importância da
análise de segurança é primordial. Porém, caso o problema não seja bem descrito pelo software,
não é motivo de exaltação nenhuma. Por ser um programa ainda muito novo, tende a ter esse
tipo de situação no dia a dia de sua codificação. Para lidar com estas situações, a missão da
equipe é procurar manualmente o possível erro e corrigi-lo o quanto antes.
5. Detalhamento da arquitetura
A Snyk não divulga as linguagens em que ele é escrito, muito menos as bibliotecas e
frameworks utilizados. Porém ele possui uma extensa lista de suporte a linguagens:
.NET, Apex, Bazel , C/C++, Elixir, Go, Java, Kotlin, JavaScript, PHP, Python , Ruby ,Scala,
Swift/Objective-C, TypeScript, VB.NET.
Para fazer a análise das vulnerabilidades a Snyk, além de usar seu próprio algoritmo,
usa a inteligência artificial DeepCode.
Snyk Container - É uma ferramenta específica para a segurança de contêineres a qual identifica
e categoriza a severidade das vulnerabilidades encontradas.
Ele também pode gerar recomendações de correções para os processos de DevOps, além de um
vasto suporte a tecnologias de criação de contêineres como Docker e Kubernetes.
Snyk Open Source – Esta ferramenta pode ser implementada em bibliotecas de código aberto
como o GitHub.
Ela faz verificações de segurança, em um pull request, no código antes de ser mesclado,
Informando as possíveis falhas que aquela versão pode ter.
Snyk Code – Ferramenta que auxilia a escrita de código, como o Copilot, mas com sua versão
própria da Snyk usando AI para diminuir os riscos de segurança na base da escrita do software,
indicando os erros de segurança já encontrados na escrita do código fonte, mitigando os
possíveis erros iniciais.
A Snyk destaca em seu site clientes internacionais pelo mundo que usam o seu serviço, dos
mais variados tipos de indústria, tais como governamentais, de saúde, tecnologia e educação.
Serão apresentados dois desses exemplos: A Australia Post e a Pearson.
6.2. Pearson
A Pearson PLC é uma empresa multinacional britânica de publicação e educação com sede em
Londres, no Reino Unido. É a maior empresa de educação e maior editora de livros do mundo,
líder de mercado no Reino Unido, Índia, Austrália e Nova Zelândia, além de ocupar o segundo
lugar nos Estados Unidos e Canadá.
Seu desafio ao contratar a Snyk era de introduzir a segurança no SDLC. A equipe de TI
da Pearson sabia que precisava priorizar a segurança do desenvolvimento para manter sua
reputação como uma marca de educação confiável na era digital. É por isso que a empresa
formou uma equipe encarregada de introduzir as melhores práticas de segurança no ciclo de
vida completo do desenvolvimento de software (SDLC).
A equipe de segurança recém-formada de Pearson tinha apenas seis membros, por isso
não era viável para eles lidar com todo o trabalho de segurança em 300 equipes de
desenvolvimento. É por isso que a Pearson precisava de uma solução que permitisse aos
desenvolvedores se apropriarem da segurança. Para isso, a empresa optou por implementar a
digitalização de dependência em escala em vários aplicativos em todo o mundo usando a Snyk.
A abordagem de desenvolvedor-first da Snyk fez da plataforma uma boa escolha para
a Pearson. A capacidade da Snyk de se integrar com inúmeras ferramentas de gerenciamento
de dependências foi fundamental para lançar a plataforma em centenas de aplicativos com
diferentes pilhas de tecnologia. Além disso, como a Snyk poderia se encaixar perfeitamente
nos pipelines automatizados de CI/CD das equipes de desenvolvimento, era mais fácil obter a
adesão do desenvolvedor para a nova abordagem DevSecOps.
A equipe do DevSecOps priorizou a abordagem de autoatendimento, o que significa
que eles garantiram que os desenvolvedores tivessem tudo o que precisavam para integrar a
Snyk com o ferramental específico de sua equipe. Usando o Microsoft Forms, a equipe de
engenharia de segurança tinha todas as informações necessárias prontamente disponíveis para
integrar rapidamente novos desenvolvedores à plataforma. Eles também criaram vídeos de
treinamento para ajudar os desenvolvedores da Pearson a entenderem o que é a digitalização
de dependência, como usá-la e como interpretar os resultados.
Uma vez que os desenvolvedores foram capazes de usar a plataforma, a equipe
DevSecOps queria ter certeza de que eles sabiam como resolver os problemas rapidamente
também. O recurso de remediação automatizado da Snyk prioriza as vulnerabilidades para
minimizar as ações que os desenvolvedores precisam tomar para corrigi-las. Isso ajuda a
reduzir a exposição ao risco que a Pearson enfrenta de dependências desatualizadas,
vulnerabilidades de segurança recém-descobertas e problemas de licenciamento.
Como resultado, a plataforma Snyk agora torna simples para a equipe de segurança
rastrear métricas úteis em todos os projetos de desenvolvimento, o que permite a segurança de
autoatendimento em toda a empresa com supervisão centralizada. Dessa forma, os engenheiros
de segurança podem garantir que as equipes de desenvolvimento estejam progredindo com a
detecção e resolução de problemas sem ter que se envolver diretamente com cada equipe.
7.2. Nessus:
Foco Principal: Nessus é uma ferramenta de scanner de vulnerabilidades de rede e ativos. Ele
se concentra em identificar vulnerabilidades em sistemas e serviços de rede.
Licença: Nessus é uma ferramenta comercial, enquanto o Snyk oferece uma versão gratuita,
mesma com recursos limitados.
Integrações: Snyk se integra ao ciclo de desenvolvimento de software, enquanto Nessus é mais
voltado para a análise de vulnerabilidades em sistemas e redes.
7.3. Veracode:
8. Segurança e privacidade:
Neste tópico, abordaremos os pilares fundamentais que norteiam a abordagem da Snyk em
relação à segurança e privacidade dos dados de seus usuários, princípios esses que são cruciais
para a construção de um ambiente confiável e protegido.
A Snyk também oferece aos usuários a opção de controlar o acesso aos seus dados. Os usuários
podem optar por compartilhar apenas os dados de código necessários para a análise de
vulnerabilidades. Aqui estão algumas das medidas de privacidade que a Snyk implementa:
Anonimização: A Snyk anonimiza os dados de código dos usuários antes de armazená-
los.
Retenção de dados: A Snyk retém os dados dos usuários pelo tempo necessário para
fornecer seus serviços.
Exclusão de dados: Os usuários podem solicitar a exclusão de seus dados da Snyk a
qualquer momento.
9. Pré-requisitos de Sistema
A Snyk é uma ferramenta altamente versátil para a segurança de software que se integra com
diversas outras ferramentas e tecnologias. No entanto, para aproveitar ao máximo a Snyk e suas
funcionalidades, é importante garantir que seu ambiente atenda aos seguintes pré-requisitos:
9.1. Conectividade à Internet
A ferramenta é baseada na web e requer conectividade à internet para acessar seus serviços e
recursos. Isso significa que o acesso à internet é essencial para acessar a Snyk, que opera na
nuvem, permitindo a verificação de vulnerabilidades e a integração com outras ferramentas.
9.2. Conta Snyk
Para usar a Snyk, é necessário criar uma conta na plataforma. Algumas funcionalidades podem
ser gratuitas, enquanto outras podem exigir uma assinatura paga. A criação de uma conta na
Snyk é necessária para acessar e utilizar suas funcionalidades de segurança, permitindo o uso
de recursos adicionais e o acesso a informações de segurança.
9.3. Sistema Operacional e Navegador da Web
A Snyk é acessada por meio de um navegador da web em sistemas operacionais populares,
como Windows, macOS e Linux. É importante usar um navegador da web moderno e mantê-
lo atualizado para obter o melhor desempenho e segurança ao acessar a Snyk. Os usuários
podem acessar a Snyk em qualquer sistema operacional compatível com navegadores
modernos, como Chrome, Firefox, Edge ou Safari.
10. Integração
A Snyk é altamente versátil, o software se integra com uma variedade de outras ferramentas e
tecnologias amplamente utilizadas no desenvolvimento de software.
11.1 Documentação
A Snyk fornece documentação extensiva, tutoriais e recursos de aprendizado para auxiliar os
usuários a entenderem e utilizar a plataforma.
12.1 Planos
A Snyk oferece segurança de desenvolvimento para equipes de todos os tamanhos.
12.1.1 Gratuito
O plano gratuito oferece como principal característica: desenvolvedores contribuintes
ilimitados, e esse plano pode ser contratado de forma imediata apenas fazendo "login" na
plataforma.
12.1.2 Time
O plano time é específico para equipes de tamanho de 5 a 25 desenvolvedores. Sua vantagem
é escolher e adaptar as quantidades de testes até de forma ilimitada conforme necessidade da
equipe. O valor varia de acordo com essas seleções e se for contratado plano anual.
12.1.3. Empresarial
O plano empresarial é o plano perfeito para equipes mais robustas e com maiores números de
contribuintes. Para contratar esse plano, deverá ser agendada uma demonstração ao vivo. O
valor não é especificado, ele varia de acordo com as especificações que o time desejar.
13. Conclusão
Referências
Peerspot. Snyk: Prós e Contras, 2023. Descrição dos benefícios e desvantagens. Disponível
em: https://www.peerspot.com/products/snyk-pros-and-cons. Acesso em: 29 de outubro de
2023.
Trend Micro. Snyk, 2023. Página da Trend Micro sobre Snyk. Disponível em:
https://www.trendmicro.com/pt_br/snyk.htmlu. Acesso em: 02 de novembro de 2023.
Snyk. Série DevSecOps, 2023. Série de artigos sobre DevSecOps. Disponível em:
https://snyk.io/pt-BR/series/devsecops/. Acesso em: 31 de outubro de 2023.
Snyk. Sobre o Snyk, 2023. Informações sobre a empresa Snyk. Disponível em:
https://snyk.io/pt-BR/about/. Acesso em: 27 de outubro de 2023.
Snyk. Snyk Code, 2023. Descrição do produto Snyk Code. Disponível em: https://snyk.io/pt-
BR/product/snyk-code/. Acesso em: 26 de outubro de 2023.
Snyk. Estudo de Caso: Australia Post, 2023. Estudo de caso sobre o uso da Snyk pela Australia
Post. Disponível em: https://snyk.io/case-studies/australia-post-2/. Acesso em: 27 de
outubro de 2023.
Snyk. Estudo de Caso: Pearson, 2023. Estudo de caso sobre o uso da Snyk pela Pearson.
Disponível em: https://snyk.io/case-studies/pearson/. Acesso em: 30 de outubro de 2023.
OWASP. OWASP Top Ten Project, 2023. Página do projeto OWASP Top Ten. Disponível
em: https://owasp.org/www-project-top-ten/. Acesso em: 26 de outubro de 2023.
Cloudflare. Ameaças de Segurança na Web: OWASP Top 10, 2023. Descrição das principais
ameaças de segurança da OWASP Top 10. Disponível em: https://www.cloudflare.com/pt-
br/learning/security/threats/owasp-top-10/. Acesso em: 28 de outubro de 2023.
Snyk. Snyk, 2023. Plataforma de segurança de código para desenvolvedores. Disponível em:
https://snyk.io/pt-BR/integrations/. Acesso em: 31 de outubro de 2023.
Snyk. Snyk Documentation, 2023. Pré-requisitos para o Agente de Código e Cliente do Broker
Snyk. Disponível em: https://docs.snyk.io/snyk-admin/snyk-broker/snyk-broker-code-
agent/prerequisites-for-the-code-agent-and-broker-client. Acesso em: 01 de novembro de
2023.