
Nesse artigo irei demonstrar a utilização de um ferramenta chamada kics ou keeping infrastructure as code secure tem a função de executar uma analise estática em códigos de Infraestrutura como Código como por exemplo Terraform, Cloudformation e outros.
O kics é uma ferramenta Open Source desenvolvida em Golang usando OPA (Open Policy Agent). Para mais informações sobre OPA consulte esse link. O OPA permite você aplicar políticas para seus microsserviços, kubernetes, pipelines de CI/CD, API Gateways e muitas outras opções.
O kics faz uma analise estática procurando por vulnerabilidades de segurança, questões de compliance e erros de configurações em suas ferramentas de Infraestrutura como Código. No momento que escrevo esse artigo as seguintes ferramentas abaixo são suportadas:

Através do kics você pode criar novas queries conforme a necessidade do seu ambiente. Mais informações nesse link.
Instalação
Para a utilização do kics você tem duas opções instalar através do código fonte ou utilizar o kics através de uma imagem docker. No meu caso vou utilizar uma imagem docker.
Docker
docker pull checkmarx/kics:latestdocker run -t -v "{path_to_host_folder_to_scan}":/path checkmarx/kics scan -p "/path" -o "/path/"
Para mais informações sobre a instalação pode consultar esse link.
Demonstração
Para essa demonstração irei utilizar o seguinte repositório. Por padrão o kics gera um arquivo json para melhorar a visualização vamos gerar um arquivo html.
Para executar basta executar o comando abaixo:
nerdctl run -it -v "C:\Users\jhmrj\Documents\tfcourse":/tmp checkmarx/kics scan -p "/tmp/" -o "/tmp/results" --report-formats "html"
Observação: Estou utilizando o utilitário nerdctl pois na minha máquina estou executando o containerd. No docker irá funcionar da mesma forma.

Abaixo algumas das regras identificadas pelo kics:




Foi gerado um arquivo html no caminho /tmp/results/results.html. Abaixo segue alguns prints desse report.


Integração
Com o kics você consegue integrar com várias ferramentas de CI/CD e também existe um plugin para vscode. Nesse link você consegue verificar todas as integrações disponíveis.