Plugin do IntelliJ para corrigir dependências vulneráveis
Aner Mazur
2 de outubro de 2018
0 minutos de leituraA Snyk lançou um plugin para IntelliJ que permite encontrar e corrigir vulnerabilidades nas dependências diretamente do seu IDE!
Como parte do compromisso da Snyk de capacitar desenvolvedores a cuidar da segurança, investimos muito em integrações abrangentes com GitHub, GitLab e Bitbucket, para que encontrar e corrigir vulnerabilidades faça parte do processo de desenvolvimento.
Isso tem sido uma parte fundamental do sucesso da Snyk, pois permite analisar cada pull request e monitorar continuamente todas as alterações nos repositórios de código.
Agora queremos ajudar desenvolvedores a lidar com vulnerabilidades antes mesmo de enviar o código, no ambiente em que passam a maior parte do tempo. Criado para funcionar dentro do IntelliJ e diretamente na JVM, o plugin oferece os testes de segurança do Snyk Open Source e recomendações práticas de correção sem que você precise sair do IntelliJ — e sem precisar instalar o Node.
O plugin é compatível com todos os projetos Maven e é gratuito.
Primeiros passos
O plugin da Snyk é um plugin padrão do IntelliJ. Veja uma rápida recapitulação de como instalá-lo.
Acesse IntelliJ IDEA > Preferências > Plugins.

Pesquise por Snyk e instale o plugin Snyk Vulnerability Scanning:

Em seguida, aceite os avisos de privacidade e reinicie o IntelliJ IDE. O plugin da Snyk aparecerá como uma pequena aba no canto inferior direito.
Talvez seja necessário entrar na Snyk pela sua conta do GitHub, caso ainda não tenha feito isso. Depois, você poderá escolher facilmente qual projeto analisar:

Encontrar e corrigir vulnerabilidades
Depois que o projeto for analisado, você verá uma lista de todas as vulnerabilidades encontradas. Veja um exemplo de um aplicativo de demonstração simples do Spring:

Para cada vulnerabilidade, você verá o título e o tipo de vulnerabilidade, além de um link para ver mais detalhes sobre os intervalos de versões vulneráveis, como ela pode ser explorada etc.
Em cinza, você verá a dependência de código aberto que introduziu a vulnerabilidade. Vale lembrar que, muitas vezes, ela pode ser uma dependência transitiva, como no exemplo abaixo. Você poderá ver todo o caminho de dependências que vai da dependência direta adicionada até a dependência vulnerável, incluindo todos os pacotes no percurso.
O plugin da Snyk para IntelliJ recomenda uma atualização (destacada em verde e negrito) para a versão mínima que corrige a vulnerabilidade. E tem mais: você pode ver como ficará toda a árvore de dependências após a atualização (na caixa verde).
Ao clicar na dependência direta, você vai direto ao ponto do seu pom.xml em que ela está definida e poderá aplicar a atualização com facilidade.
Tem mais por vir...
Nosso plano é ampliar o suporte para além do Maven, começando pelo Gradle e pelo Sbt, além de oferecer compatibilidade com outros IDEs que você talvez use. Também esperamos receber sugestões da nossa querida comunidade e incorporá-las ao plugin. Bom código!
Comece a resolver desafios de capture the flag
Aprenda a resolver desafios de capture the flag assistindo sob demanda ao nosso workshop virtual introdutório.