Skip to main content

Adicionando segurança de contêineres e IaC ao plugin da Snyk para JetBrains

Escrito por
Headshot of Georgi Mitev

Georgi Mitev

feature snyk jetbrains

3 de março de 2022

0 minutos de leitura

Temos o prazer de anunciar que a segurança de infraestrutura como código (IaC) e de contêineres agora se junta à segurança de código e dependências de código aberto no plugin gratuito da Snyk para IDEs JetBrains.

A partir de hoje, quem desenvolve com IDEs JetBrains pode proteger toda a aplicação com um clique. Snyk Security for JetBrains reforça a segurança do código e reduz o tempo gasto em revisões manuais, ajudando você a encontrar e corrigir problemas diretamente nas IDEs JetBrains.

Isso é especialmente importante para equipes de desenvolvimento e segurança que buscam deslocar a segurança para a esquerda, levando-a às mãos de quem desenvolve. A Snyk facilita a identificação e a correção antecipada de problemas de segurança durante o desenvolvimento, integrando a segurança nativamente às IDEs JetBrains e oferecendo orientações de correção junto ao código. O resultado são códigos, contêineres e configurações mais seguros desde o momento da criação.

Como mencionamos no artigo anterior, Secure Coding with Snyk’s JetBrains IDE plugin, o plugin da Snyk para todas as IDEs JetBrains verifica problemas de segurança em código personalizado, dependências de código aberto, contêineres e IaC.

Plugin da Snyk para JetBrains

A família de IDEs JetBrains é amplamente reconhecida por priorizar a produtividade de quem desenvolve, com plugins para todas as etapas do desenvolvimento de software — da qualidade e precisão do código às ferramentas de segurança.

O plugin da Snyk para JetBrains ajuda a proteger todos os aspectos da sua aplicação, incluindo:

  • Vulnerabilidades de segurança em dependências de código aberto (Snyk Open Source).

  • Vulnerabilidades de segurança e problemas de qualidade do código proprietário (Snyk Code).

  • Problemas de configuração na sua infraestrutura como código, como Terraform, AWS CloudFormation, Kubernetes e Azure Resource Manager (ARM)  (Snyk IaC)

  • Vulnerabilidades de segurança nas imagens de contêiner identificadas nos arquivos de workloads do Kubernetes (Snyk Container)

Além dos testes de segurança de código aberto, código, contêineres e IaC, você também pode acessar os insights do Snyk Advisor para avaliar a qualidade do código ao analisar arquivos de manifesto.

Começar é simples.

  1. Instale o plugin da Snyk para JetBrains

  2. Conecte sua conta gratuita da Snyk

  3. Comece a proteger seu código na IDE JetBrains

Encontrando e corrigindo configurações incorretas de IaC

A segurança de IaC no plugin da Snyk para JetBrains identifica problemas de configuração no seu código Terraform, Kubernetes, AWS CloudFormation e Azure Resource Manager (ARM) a cada verificação. Baseada na CLI da Snyk, a verificação é rápida e ideal para o desenvolvimento local. Sua privacidade está sempre protegida: os arquivos de configuração nunca são enviados nem carregados nos servidores da Snyk.

Vamos fazer uma verificação rápida e ver de perto o que ela revela sobre IaC:

Clique em qualquer problema de IaC na árvore de resultados para ir diretamente à linha de código em que ele aparece. Para ajudar você a priorizar os problemas de maior risco, cada um recebe um ícone de gravidade — alta, média ou baixa.

O plugin da Snyk em um editor de código sinaliza problemas na configuração do Terraform, incluindo credenciais da AWS definidas por meio de atributos do provedor.

Para entender e corrigir rapidamente a causa do problema, o plugin da Snyk informa:

  • Descrição: qual é a configuração incorreta

  • Impacto: como a configuração incorreta poderia ser explorada

  • Caminho: em qual caminho da árvore o problema ocorre.

  • Correção: como resolver o problema.

  • Referências: onde você pode pesquisar mais informações em diversas fontes.

  • Ignorar: se for necessário ignorar o problema, você também pode fazer isso — basta clicar no botão no canto superior direito.

Milhões de correções foram aplicadas com rapidez e precisão com base nas recomendações de correção da Snyk. Mas, se algo não estiver claro, fale com a gente. Teremos prazer em ajudar.

Agora que corrigimos os problemas de configuração de IaC, vamos analisar as vulnerabilidades das imagens de contêiner.

Encontrando e corrigindo problemas em imagens de contêiner

A segurança de contêineres no plugin verifica arquivos de configuração do Kubernetes em busca de imagens de contêiner. As vulnerabilidades são identificadas rapidamente com base nas imagens encontradas e em uma análise comparativa com as informações mais recentes do Snyk Intel Vulnerability Database.

O resultado é uma lista de vulnerabilidades de segurança nas imagens que você pretende executar nos seus clusters, com recomendações de atualização das imagens-base quando apropriado:

IDE exibindo um YAML de implantação do Kubernetes com contêineres nginx e postgres, ao lado da análise de vulnerabilidades do Snyk para nginx:1.17.1

Você pode analisar cada vulnerabilidade de segurança que pode afetar sua imagem. Além disso, quero destacar algumas funcionalidades importantes:

  • Observe a tabela comparativa colorida acima, com diferentes níveis de gravidade (crítica, alta etc.). Organizada por gravidade, ela mostra a diferença entre as vulnerabilidades da imagem atual e as da imagem recomendada pela Snyk com as mesmas características. Assim, você pode decidir se quer atualizar sua imagem para a recomendada e aumentar a confiança na imagem que executa em produção.

  • Se quiser atualizar a imagem, você também pode fazer isso pelo recurso de correção rápida, do jeito JetBrains:

Além disso, a integração mais profunda com o mecanismo de anotações da JetBrains mostra problemas de IaC e contêineres na aba de problemas, facilitando a visualização e melhorando a experiência.

Instale o plugin da Snyk no JetBrains

Primeiro, abra o JetBrains e, na sua IDE, acesse Preferences > Plugins.

Janela de preferências do JetBrains com a opção Plugins selecionada, uma busca por “Snyk” no Marketplace e o botão Install do plugin da Snyk em destaque.
Acesse Preferências, vá até Plugins e pesquise por “Snyk”.

Pesquise por “Snyk”  no JetBrains Marketplace e clique em Install. Em alguns segundos, o painel do plugin da Snyk aparecerá na barra lateral.

IDE do JetBrains exibindo o painel do Snyk na barra lateral, com categorias de análise para vulnerabilidades em código aberto, código, configuração e contêineres.
O painel do Snyk na barra lateral.

Você saberá que o plugin foi instalado quando vir o simpático rostinho do Patch, o cachorro!

Conecte a IDE JetBrains à Snyk

O próximo passo é autenticar e conectar a Snyk à sua IDE. 

Clique no botão Test code now. Você será direcionado à aplicação web da Snyk, onde poderá autenticar-se e entrar na sua conta gratuita. Você pode criar sua conta da Snyk aqui ou entrar em uma conta existente nessa janela.

Depois de autenticar, volte à IDE. Uma verificação será iniciada automaticamente:

IDE do JetBrains exibindo um projeto JavaScript enquanto o Snyk verifica vulnerabilidades em código, dependências de código aberto, configurações e contêineres.
Verificando um projeto em busca de vulnerabilidades.

O que vem por aí no plugin da Snyk para IDEs JetBrains

Com a adição de Snyk IaC e Snyk Container, você pode acessar todo o poder da Snyk com apenas um clique! É possível verificar dependências de código aberto, código proprietário, as imagens de contêiner executadas em produção e a infraestrutura como código usada para executá-las.

A Snyk é uma empresa de segurança para quem desenvolve, e as IDEs são uma das formas de levarmos a segurança para a esquerda. Em 2021, criamos uma base sólida para que você pudesse usar a Snyk na sua IDE favorita. Em 2022, vamos levar todo o poder da Snyk para proteger sua aplicação diretamente na IDE, da maneira mais simples para quem desenvolve. Fique de olho. Até breve!

Proteja a infraestrutura desde a origem

A Snyk automatiza a segurança e a conformidade de IaC nos fluxos de trabalho e detecta recursos com configurações divergentes ou ausentes.