Descripción general del escaneo de paquetes

El análisis de paquetes identifica vulnerabilidades nuevas y existentes en las dependencias de código abierto de los paquetes basados en lenguajes de tus repositorios de Artifact Registry.

Consulta los precios para obtener más información sobre los costes asociados al escaneo de paquetes.

En esta descripción general se da por hecho que ya sabes cómo usar los repositorios de Docker en Artifact Registry.

Información general

Artifact Analysis analiza los archivos de un paquete cuando se envía a Artifact Registry. Tras el análisis inicial, Artifact Registry sigue monitorizando los metadatos de los paquetes analizados para detectar nuevas vulnerabilidades.

Para evaluar las posibles áreas de riesgo, Artifact Registry compara las dependencias de un archivo de configuración de paquetes con las vulnerabilidades conocidas. Puedes revisar las posibles vulnerabilidades de tu paquete en Análisis de artefactos.

Analizar paquetes en busca de vulnerabilidades

Artifact Analysis analiza los paquetes de sus repositorios de Artifact Registry para identificar vulnerabilidades, así como dependencias y licencias, de modo que pueda conocer la composición de sus paquetes.

Artifact Analysis analiza los paquetes nuevos cuando se envían a Artifact Registry. Este proceso se denomina búsqueda automática. El análisis extrae información sobre los archivos del paquete. Después de analizar un paquete, Artifact Analysis genera un informe de vulnerabilidades, que muestra las vulnerabilidades de ese paquete. Las vulnerabilidades solo se detectan en paquetes que se monitorizan públicamente en busca de vulnerabilidades de seguridad.

Análisis continuo

Una vez que se ha analizado un paquete, Artifact Analysis monitoriza continuamente los metadatos del paquete analizado en Artifact Registry para detectar nuevas vulnerabilidades.

Análisis de artefactos recibe información nueva y actualizada sobre vulnerabilidades de fuentes de vulnerabilidades varias veces al día. Cuando llegan nuevos datos de vulnerabilidades, el análisis de artefactos actualiza las vulnerabilidades que ya se han detectado, crea nuevas vulnerabilidades para las notas nuevas y elimina las vulnerabilidades que ya no son válidas.

El análisis de artefactos sigue analizando imágenes y paquetes siempre que se hayan extraído en los últimos 30 días. Transcurridos 30 días, los metadatos de las imágenes y los paquetes analizados dejarán de actualizarse y los resultados estarán obsoletos.

Análisis de artefactos archiva los metadatos que no se han actualizado en más de 90 días. Estos metadatos archivados solo se pueden evaluar mediante la API. Puedes volver a escanear una imagen con metadatos obsoletos o archivados extrayendo esa imagen. La actualización de los metadatos puede tardar hasta 24 horas. Los paquetes con metadatos obsoletos o archivados no se pueden volver a analizar.

Tipos de paquetes admitidos

Cuando envías paquetes a Artifact Registry, Artifact Analysis puede analizar si hay vulnerabilidades.

En la siguiente tabla se muestran los tipos de paquetes que puede analizar Artifact Analysis:

Análisis automático con Artifact Registry Análisis bajo demanda
Paquetes de Java
Paquetes de Python
Paquetes de Node.js

Interfaces de Artifact Analysis

En la Google Cloud consola, puedes ver las vulnerabilidades y los metadatos de los paquetes de Artifact Registry.

Puedes usar la CLI de gcloud para ver vulnerabilidades y metadatos.

También puedes usar la API REST Artifact Analysis para realizar cualquiera de estas acciones. Al igual que con otras APIs de Cloud Platform, debes autenticar el acceso mediante OAuth2.

La API Artifact Analysis admite gRPC y REST/JSON. Puedes hacer llamadas a la API mediante las bibliotecas de cliente o con curl para REST/JSON.

Fuentes de vulnerabilidades

En la siguiente sección se enumeran las fuentes de vulnerabilidades que usa Análisis de artefactos para obtener datos de CVE.

Análisis de paquetes de idiomas

Artifact Analysis admite el análisis de vulnerabilidades de los archivos de un paquete. Los datos de vulnerabilidades se obtienen de la base de datos de avisos de GitHub.

En la mayoría de los casos, a cada vulnerabilidad se le asigna un ID de CVE, que se convierte en el identificador principal de esa vulnerabilidad. En los casos en los que no se haya asignado ningún ID de CVE a una vulnerabilidad, se asignará un ID de GHSA como identificador. Si más adelante se asigna un ID de CVE a esa vulnerabilidad, el ID de la vulnerabilidad se actualizará para que coincida con el CVE. Consulta más información en el artículo sobre cómo buscar una vulnerabilidad específica en un proyecto.

Gestores de paquetes y gestión semántica de versiones

  • Java: el análisis de artefactos admite paquetes de Maven que siguen las convenciones de nomenclatura de Maven. Si la versión del paquete incluye espacios, no se analizará.
  • Node.js: la versión del paquete sigue la especificación de versiones semánticas.
  • Python: la versión de Python debe cumplir la semántica de PEP 440.

Limitaciones

  • Análisis de artefactos solo analiza paquetes con 100 archivos o menos.

  • Si envías el mismo paquete a varios repositorios, se te cobrará por cada envío. Para obtener más información, consulta los precios de Artifact Analysis.

Siguientes pasos

  • Para obtener información sobre cómo ver las vulnerabilidades de los paquetes y filtrar las incidencias de vulnerabilidades, consulta Analizar paquetes automáticamente.