
Tfsec agora faz parte do Trivy
Como parte do nosso objetivo de fornecer uma solução abrangente de segurança open source para todos, temos consolidado todos os nossos esforços relacionados a scanning em um só lugar, e esse lugar é o Trivy.
Ao longo do último ano, o tfsec estabeleceu as bases para as capacidades de IaC e detecção de má configuração do Trivy, incluindo o scanning de Terraform, que já é suportado nativamente no Trivy há bastante tempo.
Daqui para frente, queremos incentivar a comunidade do tfsec a fazer a transição para o Trivy. Migrar para o Trivy dá a você o mesmo excelente motor de scanning de Terraform, com alguns benefícios adicionais:
Para mais informações sobre como o Trivy se compara ao tfsec e sobre a migração do tfsec para o Trivy, dê uma olhada no guia de migração.
O tfsec usa análise estática do seu código terraform para identificar possíveis má configurações.
concat()Avaliado como Adopt pelo Thoughtworks Tech Radar:
Para nossos projetos que usam Terraform, o tfsec rapidamente se tornou uma ferramenta padrão de análise estática para detectar riscos potenciais de segurança. É fácil integrá-lo a um pipeline de CI e possui uma biblioteca crescente de verificações para todos os principais provedores de nuvem e plataformas como Kubernetes. Dada a sua facilidade de uso, acreditamos que o tfsec pode ser uma boa adição a qualquer projeto Terraform.

Instale com brew/linuxbrew
brew install tfsec
Instale com Chocolatey
choco install tfsec
Instale com Scoop
scoop install tfsec
Script Bash (Linux):
curl -s https://raw.githubusercontent.com/aquasecurity/tfsec/master/scripts/install_linux.sh | bash
Você também pode baixar o binário para o seu sistema na página de releases.
Alternativamente, instale com Go:
go install github.com/aquasecurity/tfsec/cmd/tfsec@latest
Observe que usar go install instalará diretamente a partir do branch master e os números de versão não serão reportados via tfsec --version.
Os binários da página de releases são assinados com a chave de assinatura do tfsec D66B222A3EA4C25D5D1A097FC34ACEFB46EC39CE
Para mais informações, consulte a página de assinatura para instruções de verificação.
O tfsec irá escanear o diretório especificado. Se nenhum diretório for especificado, o diretório de trabalho atual será usado.
O status de saída será diferente de zero se o tfsec encontrar problemas; caso contrário, o status de saída será zero.
tfsec .
Como alternativa para instalar e executar o tfsec no seu sistema, você pode executá-lo em um contêiner Docker.
Há várias opções de Docker disponíveis
| Nome da Imagem | Base | Comentário |
|---|---|---|
| aquasec/tfsec | alpine | Imagem tfsec normal |
| aquasec/tfsec-alpine | alpine | Exatamente igual ao aquasec/tfsec, mas para quem gosta de ser explícito |
| aquasec/tfsec-ci | alpine | tfsec sem entrypoint — útil para builds de CI onde você deseja substituir o comando |
| aquasec/tfsec-scratch | scratch | Uma imagem construída sobre scratch — sem firulas, apenas executa o tfsec |
Para executar:
docker run --rm -it -v "$(pwd):/src" aquasec/tfsec /src
Uma extensão para Visual Studio Code está sendo desenvolvida para integrar os resultados do tfsec. Mais informações podem ser encontradas na página do tfsec no Marketplace
Se você quiser executar o tfsec no seu repositório como uma GitHub Action, você pode usar https://github.com/aquasecurity/tfsec-pr-commenter-action.
Agora você pode instalar a tarefa oficial do tfsec. Por favor, reporte quaisquer problemas/solicitações de funcionalidades no repositório da tarefa.
Você pode querer ignorar alguns avisos. Se desejar fazer isso, basta adicionar um comentário contendo tfsec:ignore:<rule> na linha do problema em seus modelos. Alternativamente, você pode adicionar o comentário na linha acima do bloco que contém o problema, ou no bloco do módulo para ignorar todas as ocorrências de um problema dentro do módulo.