Analisa arquivos de Infrastructure as Code em busca de configurações incorretas de segurança e vulnerabilidades usando o KICS, com relatórios do Bitbucket Code Insights.
Verifica os seus ficheiros de configuração de Infrastructure as Code para garantir boas práticas de segurança. Cria um relatório Code Insights de segurança se for encontrado algum problema.
Este Pipe suportado pelo Bitbucket Cloud utiliza a ferramenta de análise líder do setor KICS para fornecer capacidades de análise de IaC aos clientes do Bitbucket. Consulte a secção Detalhes e Exemplos para mais informações.
Adicione o seguinte excerto à secção script do seu ficheiro bitbucket-pipelines.yml:
- pipe: atlassian/bitbucket-iac-scan:0.5.2
variables:
FILES_TO_SCAN_PATH: '<string>'
# SCAN_EXTRA_ARGS: '<array>' # Optional.
# CONFIG_PATH: '<string>' # Optional.
# CREATE_REPORT: "<boolean>" # Optional. Default: `true`
# FAIL_ON: "<integer>" # Optional.
# DEBUG: "<boolean>" # Optional. Default: `false`
| Variável | Uso |
|---|---|
| FILES_TO_SCAN_PATH (*) | Arquivos ou diretórios a serem verificados, separados por ,. Exemplo: "./path_to_dir,path_to_file.txt". |
| SCAN_EXTRA_ARGS | Opções adicionais a serem passadas aos comandos de verificação do KICS. Se o argumento -p for passado, ele estenderá os arquivos ou diretórios fornecidos na variável FILES_TO_SCAN_PATH. Se o argumento --config for passado, ele será ignorado em favor da variável CONFIG_PATH. |
| CONFIG_PATH | Caminho para o arquivo de configuração do KICS. Alternativa à variável SCAN_EXTRA_ARGS. Se a palavra-chave path for fornecida dentro do arquivo de configuração, ela será ignorada em favor da variável FILES_TO_SCAN_PATH. |
| CREATE_REPORT | Controla se o pipe criará relatórios do Bitbucket CodeInsights usando os resultados da execução do KICS. Padrão: true. |
| FAIL_ON | O valor de limite do [código de status do resultado][result status code] do scanner KICS no qual o pipe deve acionar uma falha. |
| DEBUG | Ativa informações extras de depuração. Padrão: false. |
(*) = variável obrigatória.
Se necessário, os usuários podem aprimorar suas verificações incorporando opções do comando Scan com a variável SCAN_EXTRA_ARGS.
Além disso, há uma opção para os usuários criarem e fornecerem um arquivo de configuração personalizado do KICS, que é aplicado no pipe bitbucket-iac-scan por meio da variável CONFIG_PATH. Este arquivo de configuração serve como alternativa ao uso de SCAN_EXTRA_ARGS.
Após criar uma configuração personalizada do KICS, ela deve ser armazenada dentro do repositório do usuário. É aqui que o pipeline com um pipe bitbucket-iac-scan será acionado.
Se ambas as variáveis SCAN_EXTRA_ARGS e CONFIG_PATH forem fornecidas com argumentos duplicados, então os argumentos da variável SCAN_EXTRA_ARGS terão maior precedência.
script:
- pipe: atlassian/bitbucket-iac-scan:0.5.2
variables:
FILES_TO_SCAN_PATH: ./my_files_to_scan_dir
Examine as fontes e o pipe deve falhar se o [código de status do resultado][result status code] do scanner KICS for maior ou igual ao valor de limite fornecido.
script:
- pipe: atlassian/bitbucket-iac-scan:0.5.2
variables:
FILES_TO_SCAN_PATH: ./my_files_to_scan_dir
FAIL_ON: 40
Exemplo com configuração do kics que pode ser usada no pipe:
kics-config.json. A chave path será ignorada
{
"path": "assets/iac_samples",
"verbose": true,
"log-file": true,
"type": "Dockerfile,Kubernetes",
"queries-path": "assets/queries",
"exclude-paths": [
"foo/",
"bar/"
],
"output-path": "results"
}
script:
- pipe: atlassian/bitbucket-iac-scan:0.5.2
variables:
FILES_TO_SCAN_PATH: ./my_files_to_scan_dir
CONFIG_PATH: kics-config.json
Exemplo com opções de varredura:
script:
- pipe: atlassian/bitbucket-iac-scan:0.5.2
variables:
FILES_TO_SCAN_PATH: ./my_files_to_scan_dir
SCAN_EXTRA_ARGS:
- "--disable-secrets"
- "--type=Dockerfile"
Não crie um relatório do CodeInsights:
script:
- pipe: atlassian/bitbucket-iac-scan:0.5.2
variables:
FILES_TO_SCAN_PATH: ./my_files_to_scan_dir
CREATE_REPORT: 'false'
Se você precisar de ajuda com este pipe, ou tiver um problema ou solicitação de recurso, avise-nos na Comunidade.
Se estiver relatando um problema, inclua:
Copyright (c) 2024 Atlassian e outros. Licenciado sob Apache 2.0, consulte o arquivo LICENSE.txt.