Análisis de artefactos en procesos de CI/CD
Kaspersky Container Security le permite analizar imágenes usadas en CI/CD. Para analizar imágenes de CI/CD, debe configurar la integración de Kaspersky Container Security a los procesos de CI/CD.
Los datos al escuchar e interceptar el tráfico de red deben transferirse de forma segura entre el entorno de CI/CD y la solución.
Para analizar los repositorios e imágenes (para realizar el análisis de los archivos de configuración) utilizados en el proceso de CI/CD, debe añadir una fase a la canalización de CI/CD que ejecute Kaspersky Container Security Scanner.
Para analizar imágenes de CI/CD, en el archivo de configuración usado para integrar al repositorio, especifique los valores de las variables de entorno API_BASE_URL
(dirección web del servidor de la API de Kaspersky Container Security) y API_TOKEN
(token de acceso a la API de Kaspersky Container Security) de Scanner. También debe especificar el valor de API_CA_CERT
(certificado que verifica el servidor host de la solución API) o SKIP_API_SERVER_VALIDATION = true
para omitir el análisis.
Los resultados del análisis se reenviarán al servidor y se mostrarán en la Consola de administración, en la sección Resources → CI/CD. En la tabla, verá una lista de las imágenes analizadas, los resultados de la calificación de riesgos y las vulnerabilidades detectadas.
Puede hacer clic en el enlace del nombre para abrir una página que contiene información detallada sobre los resultados de los análisis de las imágenes. Esta página es similar a la página que muestra los resultados de los análisis de las imágenes del registro.
Kaspersky Container Security también mostrará el tipo de artefacto de cada objeto. Se utilizan dos artefactos principales:
- El sistema de archivos es el repositorio que contiene los archivos de configuración.
- La imagen de contenedor es la plantilla utilizada para la implementación del contenedor en el entorno de ejecución.
Para cada objeto de análisis, debe especificar el número de compilación (BUILD_NUMBER
) y la
BUILD_PIPELINE
). Puede usar estos parámetros para determinar la etapa puntual en la que el objeto dio un error.
En el caso de las imágenes de CI/CD, no es posible volver a hacer un análisis.
Kaspersky Container Security realiza los siguientes tipos de análisis en CI/CD:
- Análisis de imágenes del registro de imágenes. La solución ejecuta un análisis después de que la compilación sea correcta y guarda la imagen en el registro de imágenes.
- Análisis de imágenes de archivos comprimidos TAR. Un archivo comprimido TAR se almacena como el artefacto de compilación que la solución analizará en la siguiente canalización de compilación.
- Análisis de un repositorio de Git, que puede realizarse de las siguientes maneras:
- para la rama de un proyecto (ruta de desarrollo individual) en el repositorio de Git
- para un commit (punto de control o captura del estado en la escala de tiempo de un proyecto)
Para analizar una imagen de un registro de imágenes:
Ejecute un comando, con el siguiente formato, para iniciar el análisis:
/scanner [TARGET] --stdout
donde:
<TARGET>
es la dirección completa de la imagen en el registro<--stdout>
es el servicio de notificaciones para el registro de eventos de seguridad
Para acceder al registro, debe configurar el nombre de usuario COMPANY_EXT_REGISTRY_USERNAME
y la contraseña (token) COMPANY_EXT_REGISTRY_PASSWORD
en las variables de entorno.
Para usar un certificado y establecer una conexión segura con el registro, debe especificar los datos del certificado en la variable de entorno COMPANY_EXT_REGISTRY_TLS_CERT
como la siguiente cadena en el formato .PEM : -----BEGIN CERTIFICATE-----\n...
<datos del certificado
> ...\n-----END CERTIFICATE-----
.
Ejemplos del análisis de imágenes en el CI/CD de GitLab y CI/CD de Jenkins.
Para analizar una imagen de un archivo comprimido TAR:
- Compile una imagen y guárdela como archivo comprimido TAR con cualquier aplicación para crear imágenes en contenedores.
- Ejecute un comando, con el siguiente formato, para iniciar el análisis:
/scanner [TARGET] --file --stdout
donde:
<TARGET>
es la ruta al archivo que tiene la imagen que se analizará<--file>
es la marca que indica el análisis del archivoTARGET
<--stdout>
es el servicio de notificaciones para el registro de eventos de seguridad
Para analizar el repositorio de Git:
- En el archivo de configuración del repositorio de Git, en las variables de entorno debe especificar el token para acceder al repositorio (
GITHUB_TOKEN
oGITLAB_TOKEN
). - Ejecute un comando, con el siguiente formato, para iniciar el análisis:
/scanner [TARGET] --repo [--branch BRANCH] [--commit COMMIT] --stdout
donde:
<DESTINO>
es la dirección web (URL) del repositorio de Git<--repo>
es la marca que indica el análisis del archivo
TARGET
<--branch BRANCH>
es la rama del repositorio que se analizará
<--commit COMMIT>
es el hash del commit que se analizará
<--stdout>
es el servicio de notificaciones para el registro de eventos de seguridad
Para analizar el sistema de archivos
, debe usar la imagen de análisis con la base de datos vX.XX-with-db. Para analizar archivos IaC, la herramienta de análisis debe tener acceso a los archivos dentro del contenedor (por ejemplo, tras montar un volumen con archivos o copiar archivos al sistema de archivos del contenedor).Pasos para analizar el sistema de archivos:
Ejecute un comando, con el siguiente formato, para iniciar el análisis:
/scanner [TARGET] --sources --stdout
donde:
<DESTINO>
es la ruta a la carpeta del archivo a analizar<--sources>
es
el indicador que señala la necesidad de analizar archivos en el sistema de archivos<--stdout>
es el servicio de notificaciones para el registro de eventos de seguridad
Puede ver los resultados de los análisis en Resources → CI/CD o puede descargarlos en formatos .SPDX, .JSON o .HTML.