Eseguire il mapping delle immagini del contenitore dal codice al runtime

Quando Defender per il cloud rileva una vulnerabilità in un'immagine del container, può risultare difficile ricondurre tale immagine all'esecuzione originale della pipeline CI/CD. Questa sfida è comune se l'immagine si trova in un registro contenitori o in esecuzione in un cluster Kubernetes. Senza il contesto della pipeline, è più difficile trovare lo sviluppatore giusto e iniziare rapidamente la correzione. Defender Cloud Security Posture Management (CSPM) include funzionalità di sicurezza DevOps che eseguono il mapping dei carichi di lavoro dei contenitori dal codice al cloud, in modo che i team possano iniziare a correggere più velocemente.

Codice in fase di esecuzione: prerequisiti tecnici

Per stabilire le relazioni tra codice e runtime, sono necessari i prerequisiti seguenti.

Prerequisiti generali (tutti i metodi)

I prerequisiti seguenti si applicano indipendentemente dal metodo di mapping usato:

  • Defender CSPM (Cloud Security Posture Management) o Defender per contenitori devono essere abilitati nell'ambiente cloud.
    • Un set limitato di funzionalità di mapping è incluso in Defender per contenitori.
  • Le immagini container devono essere create tramite una pipeline CI/CD.
    • Le immagini compilate manualmente e di cui viene eseguito il push non sono supportate, anche se alcune immagini compilate manualmente potrebbero essere ancora visualizzate nei risultati del mapping.
  • Le immagini del contenitore devono essere individuabili da Defender per il cloud, in uno dei casi seguenti:
    • Essere archiviato in un registro contenitori supportato, o
    • Esecuzione in un ambiente Kubernetes supportato

Opzione 1: Connettere l'ambiente di codice a Defender per il cloud

Quando si connette l'ambiente di codice a Defender per il cloud, viene attivato automaticamente un set di strumenti automatizzati. Questi strumenti non influiscono sui flussi di lavoro DevOps esistenti e abilitano il mapping da codice a runtime.

Nota

  • Attualmente supportato per Azure DevOps e GitHub
  • Le immagini del contenitore compilate e distribuite prima della connessione potrebbero avere un supporto limitato

Per i passaggi di installazione, vedere:

Opzione 2: mapping basato sulle etichette Docker

Il mapping basato sulle etichette Docker si basa sui metadati incorporati direttamente nell'immagine del contenitore in fase di compilazione. Defender per il cloud estrae questi metadati dal manifesto dell'immagine OCI/Docker e lo usa per correlare l'immagine al repository di origine.

Per ulteriori informazioni consulta:

Nota

  • Questo metodo non richiede un connettore DevOps.
  • Il mapping viene eseguito per gli ambienti Kubernetes coperti da Defender CSPM o Defender per i contenitori.

Opzione 3: Mapping basato sulle attestazioni di GitHub

Il mapping basato sull'attestazione usa metadati di provenienza verificabili in modo crittografico generati durante i flussi di lavoro di GitHub Actions. Queste attestazioni collegano le immagini del container al repository di origine esatto, al commit e all'identità di build.

Per ulteriori informazioni consulta:

Verificare il mapping del codice al runtime (portale di Azure)

Dopo aver compilato un'immagine del contenitore in una pipeline CI/CD Azure DevOps ed eseguirne il push in un registro, usare Cloud Security Explorer per visualizzare il mapping:

  1. Accedere al portale di Azure all'indirizzo portal.azure. com.

  2. Andare a Microsoft Defender per il Cloud>Esploratore di Sicurezza del Cloud. La mappatura delle immagini del contenitore può richiedere fino a quattro ore prima di essere visualizzata.

  3. Per visualizzare il mapping di base, selezionare Immagini del contenitore>+>Invia dai repository di codice.

    Screenshot che mostra come trovare il mapping di base dei contenitori.

  4. (Facoltativo) Selezionare + per Immagini contenitore per aggiungere filtri alla query, ad esempio Presenta vulnerabilità, per visualizzare solo le immagini del contenitore con vulnerabilità ed esposizioni comuni( CVE).

  5. Dopo aver eseguito la query, viene visualizzata l'associazione tra il registro contenitori e la pipeline. Selezionare ... accanto alla linea di connessione (bordo) per visualizzare altri dettagli.

    Screenshot che illustra una query avanzata per i risultati della mappatura dei contenitori.

Passaggi successivi