Analiza archivos de Infrastructure as Code en busca de configuraciones de seguridad incorrectas y vulnerabilidades usando KICS, con informes de Bitbucket Code Insights.
Escanea tus archivos de configuración de infraestructura como código para garantizar buenas prácticas de seguridad. Crea un informe de Code Insights de seguridad si se encuentra algún problema.
Este Pipe compatible con Bitbucket Cloud aprovecha la herramienta de escaneo líder del sector KICS para proporcionar capacidades de escaneo de IaC a los clientes de Bitbucket. Consulta la sección Detalles y Ejemplos para obtener más información.
Añade el siguiente fragmento a la sección de script de tu archivo 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`
| Variable | Uso |
|---|---|
| FILES_TO_SCAN_PATH (*) | Archivos o directorios a escanear, separados por ,. Ejemplo: "./path_to_dir,path_to_file.txt". |
| SCAN_EXTRA_ARGS | Opciones adicionales para pasar a los comandos de escaneo de KICS. Si se pasa el argumento -p, extenderá los archivos o directorios proporcionados en la variable FILES_TO_SCAN_PATH. Si se pasa el argumento --config, será ignorado en favor de la variable CONFIG_PATH. |
| CONFIG_PATH | Ruta al archivo de configuración de KICS. Alternativa a la variable SCAN_EXTRA_ARGS. Si se proporciona la palabra clave path dentro del archivo de configuración, será ignorada en favor de la variable FILES_TO_SCAN_PATH. |
| CREATE_REPORT | Controla si el pipe creará informes de Bitbucket CodeInsights usando los resultados de la ejecución de KICS. Predeterminado: true. |
| FAIL_ON | El valor umbral del [código de estado del resultado][result status code] del escáner KICS en el que el pipe debe desencadenar un fallo. |
| DEBUG | Activar información de depuración adicional. Predeterminado: false. |
(*) = variable obligatoria.
Si es necesario, los usuarios pueden mejorar sus escaneos incorporando opciones del comando de escaneo con la variable SCAN_EXTRA_ARGS.
Además, existe una opción para que los usuarios creen y proporcionen un archivo de configuración de KICS personalizado, que se aplica en el pipe bitbucket-iac-scan a través de la variable CONFIG_PATH. Este archivo de configuración sirve como alternativa al uso de SCAN_EXTRA_ARGS.
Tras crear una configuración de KICS personalizada, esta debe almacenarse dentro del repositorio del usuario. Es aquí donde se activará el pipeline con un pipe bitbucket-iac-scan.
Si tanto las variables SCAN_EXTRA_ARGS como CONFIG_PATH se proporcionan con argumentos duplicados, entonces los argumentos de la variable SCAN_EXTRA_ARGS tendrán una mayor precedencia.
script:
- pipe: atlassian/bitbucket-iac-scan:0.5.2
variables:
FILES_TO_SCAN_PATH: ./my_files_to_scan_dir
Escanee las fuentes y la tubería debería fallar si el [código de estado del resultado][result status code] del escáner KICS es mayor o igual al valor de umbral proporcionado.
script:
- pipe: atlassian/bitbucket-iac-scan:0.5.2
variables:
FILES_TO_SCAN_PATH: ./my_files_to_scan_dir
FAIL_ON: 40
Ejemplo con configuración de kics que se puede usar en el pipe:
kics-config.json. La clave 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
Ejemplo con opciones de escaneo:
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"
No cree un informe de CodeInsights:
script:
- pipe: atlassian/bitbucket-iac-scan:0.5.2
variables:
FILES_TO_SCAN_PATH: ./my_files_to_scan_dir
CREATE_REPORT: 'false'
Si necesitas ayuda con este pipe, o tienes un problema o una solicitud de función, avísanos en Community.
Si estás reportando un problema, incluye:
Copyright (c) 2024 Atlassian y otros. Licenciado bajo Apache 2.0, consulta el archivo LICENSE.txt.