En este documento se describe cómo ver las declaraciones de Vulnerability Exploitability eXchange (VEX) almacenadas en Análisis de artefactos y cómo filtrar vulnerabilidades mediante el estado de VEX.
Los responsables de aplicar la seguridad y las políticas pueden usar estas funciones para priorizar las tareas de mitigación de problemas de seguridad. También puede usar los datos de VEX para certificar la composición de sus artefactos y ayudar a su organización a cumplir los requisitos normativos.
Roles obligatorios
Para obtener los permisos que necesitas para subir evaluaciones de VEX y comprobar el estado de VEX de las vulnerabilidades, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos en el proyecto:
-
Para ver las repeticiones de vulnerabilidades, sigue estos pasos:
Lector de repeticiones de Container Analysis (
roles/containeranalysis.occurrences.viewer
)
Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.
También puedes conseguir los permisos necesarios a través de roles personalizados u otros roles predefinidos.
Ver el estado de VEX en la Google Cloud consola
Para ver la información de VEX de las imágenes de contenedor almacenadas en Artifact Registry, sigue estos pasos:
Abre la página Repositorios de Artifact Registry.
En la página se muestra una lista de tus repositorios.
En la lista de repositorios, haz clic en el nombre de un repositorio.
En la lista de imágenes, haz clic en el nombre de una imagen.
Se abrirá una lista de resúmenes de imágenes.
En la lista de resúmenes, haga clic en el nombre de un resumen.
Se abrirá una página de detalles del resumen con una fila de pestañas. De forma predeterminada, se abre la pestaña Vista general.
En la fila de pestañas, selecciona la pestaña Vulnerabilidades.
En la página se muestra un resumen de los Resultados del análisis con una sección Estado de VEX.
En la sección de resumen Estado de VEX se muestra el número de paquetes categorizados por cada tipo de estado de VEX. Para ver todos los paquetes con un estado de VEX específico, haz clic en el número situado junto al tipo de estado.
En la pestaña Vulnerabilidades también se muestra el estado de VEX de cada paquete de la lista de vulnerabilidades.
Para filtrar la lista de vulnerabilidades, sigue estos pasos:
- Encima de la lista de vulnerabilidades, haga clic en Filtrar vulnerabilidades.
- Elige un filtro de la lista.
- Especifica el valor que quieras usar para filtrar la lista.
Ver el estado de VEX en Cloud Build
Si usas Cloud Build, también puedes ver información de VEX en el panel lateral Información de seguridad de la Google Cloud consola.
Si usas Cloud Build, puedes ver los metadatos de las imágenes en el panel lateral Información de seguridad de la Google Cloud consola.
El panel lateral Información de seguridad ofrece una vista general de la información de seguridad de las compilaciones de los artefactos almacenados en Artifact Registry. Para obtener más información sobre el panel lateral y cómo puedes usar Cloud Build para proteger tu cadena de suministro de software, consulta Ver información valiosa sobre la seguridad de las compilaciones.
Ver con la CLI de gcloud
En la siguiente sección se explica cómo obtener información de VEX y aplicar filtros para limitar los resultados según tus necesidades.
Ver información de VEX de un solo artefacto
Para ver la información de VEX subida, puedes consultar la API y enumerar las notas con el tipo de nota VULNERABILITY_ASSESSMENT
.
Usa la siguiente llamada a la API para solicitar todas las notas de evaluación de vulnerabilidades del artefacto especificado:
curl -G -H "Content-Type: application/json" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
--data-urlencode "filter=(kind=\"VULNERABILITY_ASSESSMENT\" AND vulnerability_assessment.product.generic_uri=\"https://LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/IMAGE_NAME@DIGEST\"" https://containeranalysis.googleapis.com/v1/projects/PROJECT_ID/notes
Dónde
- LOCATION es la ubicación regional o multirregional de tu repositorio.
- PROJECT_ID es el ID del proyecto Google Cloud en el que se almacena tu imagen en un repositorio de Artifact Registry.
- REPO_NAME es el nombre del repositorio de Artifact Registry que contiene la imagen.
- IMAGE_NAME es el nombre de la imagen.
- DIGEST es el digest de la imagen, una cadena que empieza por
sha256:
.
Filtrar vulnerabilidades por estado de VEX
Con gcloud, puede filtrar los metadatos de vulnerabilidades por estado de VEX. El análisis de artefactos se basa en el estado almacenado en cada vulnerabilidad de Grafeas.
Ejecuta el siguiente comando para filtrar las incidencias de vulnerabilidades en función de un estado de VEX específico:
gcloud artifacts vulnerabilities list RESOURCE_URI \
--occurrence-filter="vulnDetails.vex_assessment.state=\"STATUS\""
Dónde
- RESOURCE_URI es la URL completa de la imagen, similar a https://LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY/IMAGE_ID@sha256:HASH.
- STATUS es el estado de VEX por el que se va a filtrar, que puede ser uno de los siguientes valores:
known_affected
,known_not_affected
,under_investigation
ofixed
.
Por ejemplo, ejecuta el siguiente comando para filtrar las incidencias de vulnerabilidades con el estado VEX AFFECTED
:
gcloud artifacts vulnerabilities list RESOURCE_URI \
--occurrence-filter="vulnDetails.vex_assessment.state=\"AFFECTED\""
Lista de vulnerabilidades sin VEX
Para identificar las vulnerabilidades que aún no tienen información de VEX asociada, usa el siguiente comando de gcloud:
gcloud artifacts vulnerabilities list /
LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/IMAGE_NAME@DIGEST /--occurrence-filter="isNull(vulnDetails.vex_assessment.state)"
Dónde
- LOCATION es la ubicación regional o multirregional de tu repositorio.
- PROJECT_ID es el ID del proyecto Google Cloud en el que se almacena tu imagen en un repositorio de Artifact Registry.
- REPO_NAME es el nombre del repositorio de Artifact Registry que contiene la imagen.
- IMAGE_NAME es el nombre de la imagen.
- DIGEST es el digest de la imagen, una cadena que empieza por
sha256:
.
Limitaciones
- Solo se pueden subir instrucciones VEX para imágenes de contenedor.
- Las declaraciones VEX subidas no se pueden exportar a los estándares CSAF, OpenVex o SPDX.
Siguientes pasos
- Consulta información sobre las listas de materiales de software (SBOMs).
- Analiza las vulnerabilidades con Artifact Analysis.