Visualizzare lo stato VEX

Questo documento descrive come visualizzare le istruzioni Vulnerability Exploitability eXchange (VEX) archiviate in Artifact Analysis e filtrare le vulnerabilità utilizzando lo stato VEX.

Gli addetti all'applicazione di sicurezza e policy possono utilizzare queste funzionalità per dare la priorità alle attività di mitigazione dei problemi di sicurezza. Puoi anche utilizzare i dati VEX per attestare la composizione dei tuoi artefatti e aiutare la tua organizzazione a soddisfare i requisiti normativi.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per caricare le valutazioni VEX e controllare lo stato VEX delle vulnerabilità, chiedi all'amministratore di concederti i seguenti ruoli IAM all'interno del progetto:

Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

Visualizzare lo stato VEX nella Google Cloud console

Per visualizzare le informazioni VEX per le immagini container archiviate in Artifact Registry:

  1. Apri la pagina Repository di Artifact Registry.

    Apri la pagina Repository

    La pagina mostra un elenco dei repository.

  2. Nell'elenco dei repository, fai clic sul nome di un repository.

  3. Nell'elenco delle immagini, fai clic sul nome di un'immagine.

    Viene visualizzato un elenco dei digest delle immagini.

  4. Nell'elenco dei digest, fai clic sul nome di un digest.

    Si apre una pagina dei dettagli del digest con una riga di schede. Per impostazione predefinita, è aperta la scheda Panoramica.

  5. Nella riga di schede, seleziona la scheda Vulnerabilità.

    La pagina mostra una panoramica dei risultati dell'analisi con una sezione Stato VEX.

    La sezione di riepilogo Stato VEX mostra il numero di pacchetti classificati in base a ogni tipo di stato VEX. Per visualizzare tutti i pacchetti con uno stato VEX specifico, fai clic sul numero accanto al tipo di stato.

    La scheda Vulnerabilità mostra anche lo stato VEX di ogni pacchetto nell'elenco delle vulnerabilità.

    Per filtrare l'elenco delle vulnerabilità:

    1. Sopra l'elenco delle vulnerabilità, fai clic su Filtra vulnerabilità.
    2. Scegli un filtro dall'elenco dei filtri.
    3. Specifica il valore che vuoi utilizzare per filtrare l'elenco.

Visualizzare lo stato VEX in Cloud Build

Se utilizzi Cloud Build, puoi anche visualizzare le informazioni VEX nel riquadro laterale Insight sulla sicurezza all'interno della Google Cloud console.

Se utilizzi Cloud Build, puoi visualizzare i metadati delle immagini nel Insight sulla sicurezza riquadro laterale all'interno della Google Cloud console.

Il riquadro laterale Insight sulla sicurezza fornisce una panoramica di alto livello delle informazioni sulla sicurezza delle build per gli artefatti archiviati in Artifact Registry. Per saperne di più sul riquadro laterale e su come utilizzare Cloud Build per proteggere la catena di fornitura del software, consulta Visualizzare gli insight sulla sicurezza delle build.

Visualizzare utilizzando gcloud CLI

La sezione seguente spiega come recuperare le informazioni VEX e applicare i filtri per limitare i risultati in base alle tue esigenze.

Visualizzare le informazioni VEX per un singolo artefatto

Per visualizzare le informazioni VEX caricate, puoi eseguire una query sull'API ed elencare le note con il tipo di nota VULNERABILITY_ASSESSMENT.

Utilizza la seguente chiamata API per richiedere tutte le note di valutazione delle vulnerabilità per l'artefatto specificato:

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

Dove

  • LOCATION è la regione o la località multiregionale del repository.
  • PROJECT_ID è l'ID del Google Cloud progetto in cui l'immagine è archiviata in un repository Artifact Registry.
  • REPO_NAME è il nome del repository Artifact Registry che contiene l'immagine.
  • IMAGE_NAME è il nome dell'immagine.
  • DIGEST è il digest dell'immagine, una stringa che inizia con sha256:.

Filtrare le vulnerabilità in base allo stato VEX

Utilizzando gcloud, puoi filtrare i metadati delle vulnerabilità in base allo stato VEX. Artifact Analysis filtra in base allo stato archiviato in ogni occorrenza di vulnerabilità Grafeas.

Esegui il comando seguente per filtrare le occorrenze di vulnerabilità in base a uno stato VEX specificato:

gcloud artifacts vulnerabilities list RESOURCE_URI \
    --occurrence-filter="vulnDetails.vex_assessment.state=\"STATUS\""

Dove

  • RESOURCE_URI è l'URL completo dell'immagine, simile a https://LOCATION-docker.pkg.dev/PROJECT_ID/REPOSITORY/IMAGE_ID@sha256:HASH.
  • STATUS è lo stato VEX da filtrare, che può essere uno dei seguenti valori: known_affected, known_not_affected, under_investigation o fixed.

Ad esempio, esegui il comando seguente per filtrare le occorrenze di vulnerabilità con lo stato VEX AFFECTED:

gcloud artifacts vulnerabilities list RESOURCE_URI \
    --occurrence-filter="vulnDetails.vex_assessment.state=\"AFFECTED\""

Elencare le vulnerabilità senza VEX

Per identificare le vulnerabilità a cui non sono ancora associate informazioni VEX, utilizza il seguente comando gcloud:

gcloud artifacts vulnerabilities list /
    LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/IMAGE_NAME@DIGEST /--occurrence-filter="isNull(vulnDetails.vex_assessment.state)"

Dove

  • LOCATION è la regione o la località multiregionale del repository.
  • PROJECT_ID è l'ID del Google Cloud progetto in cui l'immagine è archiviata in un repository Artifact Registry.
  • REPO_NAME è il nome del repository Artifact Registry che contiene l'immagine.
  • IMAGE_NAME è il nome dell'immagine.
  • DIGEST è il digest dell'immagine, una stringa che inizia con sha256:.

Limitazioni

  • Il caricamento delle istruzioni VEX è supportato solo per le immagini container.
  • Le istruzioni VEX caricate non possono essere esportate negli standard CSAF, OpenVex o SPDX.

Passaggi successivi