Skip to main content

Priorize correções com mais eficiência usando Reachable Vulnerabilities para GitHub

Escrito por
Prioritisation header

21 de janeiro de 2021

0 minutos de leitura

Temos o prazer de começar o ano com a versão beta de Reachable Vulnerabilities para GitHub, que oferece às equipes de desenvolvimento e segurança um contexto aprofundado, no nível da aplicação, sobre vulnerabilidades identificadas em aplicações hospedadas no GitHub e permite priorizar correções com mais eficiência.

Anunciado em julho do ano passado, Reachable Vulnerabilities analisa o fluxo de execução de uma aplicação para identificar se a parte vulnerável de uma dependência é realmente alcançada. Esse contexto no nível da aplicação pode então ser usado para garantir que os esforços de correção se concentrem no conjunto certo de vulnerabilidades — aquelas que representam o maior risco para a organização.

Quem usa a Snyk CLI já aproveita Reachable Vulnerabilities para priorizar correções de vulnerabilidades. Agora, temos o prazer de anunciar que essa capacidade também está disponível na integração com o GitHub, facilitando muito a priorização em repositórios gerenciados pelo GitHub.

Painel de vulnerabilidades que mostra um problema de criptografia insegura marcado como alcançável, com filtros para vulnerabilidades alcançáveis, potencialmente alcançáveis e desconhecidas.

O que é “alcançabilidade” e por que ela importa

A maioria das soluções de análise de composição de software (SCA) verifica sua aplicação para determinar quais dependências de código aberto estão sendo incluídas e, em seguida, compara esses resultados com um banco de dados de vulnerabilidades para gerar um relatório das dependências vulneráveis.

Com o tempo, esses relatórios podem chegar a centenas ou até milhares de problemas. Como as organizações não conseguem — e nem devem — corrigir todas essas vulnerabilidades, é preciso priorizá-las. A maioria das soluções disponíveis no mercado fornece níveis de gravidade com base no CVSS para ajudar nessa priorização. Mas isso não é suficiente quando há centenas de vulnerabilidades de alta gravidade ou cinco vulnerabilidades com a mesma pontuação CVSS.

É aí que entra a “alcançabilidade”, oferecendo o contexto aprofundado da aplicação necessário para avaliar riscos com rapidez e mais precisão. Assim como é possível comer as partes saudáveis de uma fruta estragada, uma vulnerabilidade em uma parte do seu código não significa necessariamente que toda a biblioteca esteja vulnerável. Em geral, vulnerabilidades que não são alcançadas não comprometem a aplicação como um todo e, por isso, representam menos risco do que as que são alcançadas.

Reachable Vulnerabilities reduz drasticamente o número de vulnerabilidades que exigem atenção urgente. Cerca de 3% das vulnerabilidades encontradas nos projetos Java Maven que testamos com Reachable Vulnerabilities são de fato “alcançáveis”. Isso significa que as demais podem ser ignoradas? Claro que não. Elas também são importantes e precisam ser avaliadas, mas é aí que está a diferença entre urgente e importante.

Como funciona Reachable Vulnerabilities?

Se você quer saber como Reachable Vulnerabilities funciona, esta publicação do blog apresenta uma análise técnica aprofundada de como a Snyk combina pesquisa de segurança proprietária com análise estática automatizada para analisar vulnerabilidades identificadas e fornecer um contexto preciso e detalhado no nível da aplicação.

A extensão dessa capacidade para a integração com o GitHub exigiu algum trabalho adicional de engenharia. O principal elemento que viabiliza a análise é a criação de um grafo de chamadas, que mapeia as diversas interações entre sua aplicação e as dependências. Para aplicações hospedadas no GitHub, a Snyk clona seu repositório, compila a aplicação e cria o grafo de chamadas necessário para determinar a alcançabilidade. Depois que o grafo é criado, todo o código-fonte é removido dos servidores da Snyk.

Como ativar Reachable Vulnerabilities nos seus projetos do GitHub

A integração da Snyk com o GitHub permite testar continuamente todos os seus repositórios de código hospedados no GitHub para encontrar vulnerabilidades nas dependências de código aberto e, em seguida, corrigi-las com fluxos de trabalho automatizados de correção e atualização. Se ainda não fez isso, siga as etapas descritas em nossa documentação para configurar sua integração inicial com o GitHub.

Reachable Vulnerabilities para GitHub NÃO é ativado por padrão. Para atender plenamente aos requisitos de segurança de dados, é necessário ativar manualmente essa funcionalidade para realizar a análise.

Para ativar Reachable Vulnerabilities nos seus projetos do GitHub, abra as configurações da organização para a integração com o GitHub e use o botão de alternância na seção Análise de vulnerabilidades alcançáveis.

Painel de configurações da análise de vulnerabilidades alcançáveis, com uma opção ativada, um aviso sobre a clonagem do repositório e o botão Salvar alterações

Reachable Vulnerabilities será ativado para todos os novos projetos do GitHub que você importar E para os projetos do GitHub existentes, que serão analisados na próxima execução de um teste diário ou noturno.

Priorização com Reachable Vulnerabilities

Depois de ativada, várias indicações e informações sobre alcançabilidade serão exibidas nas páginas dos projetos relevantes na Snyk. Você poderá usá-las para filtrar rapidamente os diferentes problemas identificados no projeto.

Painel de vulnerabilidades que mostra um problema de validação inadequada de entrada, de alta gravidade e alcançável, detalhes da correção, pontuação de prioridade e anotações explicativas.

Reachable Vulnerabilities também é considerado na Pontuação de prioridade (1) da Snyk — um sistema avançado de pontuação integrado, baseado em um algoritmo proprietário que processa diversos fatores, como a pontuação CVSS, a disponibilidade de uma correção, exploits conhecidos, há quanto tempo a vulnerabilidade foi descoberta e, como mencionado, se ela é alcançável. A pontuação resultante aparece no canto superior direito dos cartões de cada problema e pode ser usada para filtrar e classificar rapidamente seu backlog.

Um rótulo de alcançabilidade (2) é adicionado às vulnerabilidades relevantes. Você também pode usar filtros de alcançabilidade (3) para classificar rapidamente os problemas identificados no projeto e priorizar aqueles que representam o maior risco. A Snyk também exibe informações detalhadas (4) sobre o caminho exato pelo qual a aplicação chama a função vulnerável.

Correções com Reachable Vulnerabilities

A integração da Snyk com o GitHub permite não apenas identificar problemas, mas também corrigi-los como parte do seu fluxo de trabalho baseado em Git.

Você pode criar manualmente uma pull request diretamente a partir da vulnerabilidade na interface da Snyk. Para facilitar ainda mais, a Snyk criará pull requests automaticamente em algumas situações: quando identificar uma nova vulnerabilidade corrigível ou quando uma nova correção ficar disponível para uma vulnerabilidade existente. O Backlog Management da Snyk também criará uma pull request com base na Pontuação de prioridade (saiba mais sobre o Backlog Management aqui).

Todas essas pull requests exibem informações sobre alcançabilidade, junto com as demais recomendações de correção da Snyk, na aba Conversation da pull request. Esse contexto ajuda você a decidir com muito mais facilidade se deve mesclá-la.

Solicitação de pull request do GitHub mostrando uma atualização de dependência do Snyk de httpclient 4.3.1 para 4.5.13, com a coluna de alcançabilidade destacada.

Os dados de alcançabilidade também estão disponíveis na página Relatórios †’ Problemas, para que você possa monitorar e acompanhar suas vulnerabilidades com mais facilidade ao longo do tempo.

Menu de filtros de problemas mostrando opções de alcançabilidade e uma tabela de problemas com a coluna Alcançabilidade destacada

Comece agora!

Uma avaliação de risco precisa e rápida é essencial para priorizar com eficácia. O CVSS pode ser um bom ponto de partida, mas não é abrangente o suficiente nem oferece contexto aprofundado sobre os fatores subjetivos relacionados a uma vulnerabilidade.

Ao analisar o fluxo de execução da aplicação e correlacioná-lo com os dados abrangentes de segurança da Snyk, Reachable Vulnerabilities da Snyk — agora também disponível para aplicações hospedadas no GitHub — oferece o contexto aprofundado no nível da aplicação necessário para uma priorização eficaz.

Reachable Vulnerabilities para GitHub está sendo disponibilizado gradualmente em versão beta para todos os planos da Snyk e, por enquanto, oferece suporte a projetos Java (Maven). Se não quiser esperar e quiser ter acesso antes, fale com a gente pelo: support@snyk.io. Para mais detalhes, consulte a documentação principal.

Leia mais

illustration hero ai
Blog

PHP corrige duas vulnerabilidades críticas de RCE sem autenticação (CVE-2026-109618, CVE-2026-109619): atualize agora

Duas falhas críticas no ciclo de requisições do PHP podem permitir execução remota de código sem autenticação. Atualize para uma versão corrigida ou instale um backport do fornecedor para versões mais antigas.

blog feature ai lilac
Blog

Transforme seu backlog de vulnerabilidades em pull requests com remediação agentiva

O Evo Remediation Agent está em Open Preview e traz a resolução automatizada de dependências para o Evo Agentic AppSec. Agora, as equipes de AppSec podem executar campanhas contínuas de remediação

AI Background min crop
Blog

A IA está acionando todos os riscos que você aceitou: sete insights do painel de segurança de IA sem filtros

A IA está tornando os ataques mais baratos e rápidos, expondo riscos que as organizações já carregam. Quatro líderes de segurança explicam por que a defesa na velocidade das máquinas e a correção mais rápida são essenciais.