Condividi tramite


Panoramica della fase di distribuzione

La fase Deploy è la quarta fase del framework CSSC (Containers Secure Supply Chain). Le aziende possono distribuire immagini del contenitore nell'ambiente di hosting per eseguire carichi di lavoro in contenitori senza convalidare la sicurezza e la conformità di tali immagini contenitore. Ciò aumenta i potenziali rischi per la sicurezza o può causare l'esecuzione di codice vulnerabile o dannoso nell'ambiente di hosting. I metadati e le attestazioni dell'immagine del contenitore prodotti nelle fasi precedenti devono essere convalidati in fase di distribuzione. Ciò garantisce che la distribuzione sia conforme ai criteri di sicurezza e conformità a livello aziendale.

Il framework CSSC (Containers Secure Supply Chain) di Microsoft identifica la necessità di distribuzione di immagini in modo conforme. Il framework CSSC consiglia un set di procedure e strumenti standard che consentono di distribuire in modo sicuro le immagini convalidando i metadati dell'immagine e implementando i criteri di conformità. In questo articolo verranno illustrati gli obiettivi, le procedure standard e gli strumenti che è possibile usare nella fase Di distribuzione del framework CSSC.

Background

Le aziende possono distribuire immagini del contenitore direttamente da registri esterni o interni senza verificare che le immagini del contenitore siano libere dalle vulnerabilità e che siano approvate per l'uso. La distribuzione di immagini di contenitori non attendibili e non conformi nell'ambiente di hosting aumenta i potenziali rischi per la sicurezza o l'esecuzione di malware o codice vulnerabile nell'ambiente di hosting.

Le procedure del framework CSSC consentono di garantire che le immagini del contenitore pronte per la distribuzione provenano da registri attendibili, privi di vulnerabilità e malware e garantiscono autenticità e integrità. Molte aziende implementano criteri per verificare lo SBOM e le firme delle immagini del contenitore prima di distribuirle in Kubernetes e analizzare continuamente le immagini del contenitore per convalidare i report di analisi.

Nella fase Distribuzione ci concentriamo sulla protezione dell'immagine del contenitore e dell'ambiente di distribuzione. Le distribuzioni usano la firma dell'immagine del contenitore, i metadati del ciclo di vita, i report di vulnerabilità e malware, SBOM e i dati di provenienza generati dalla fase di compilazione per garantire che le immagini del contenitore siano attendibili e conformi prima di distribuirle nell'ambiente di hosting.

Flusso di lavoro per la distribuzione di immagini del contenitore

La fase Deploy include un flusso di lavoro per distribuire l'immagine del contenitore in centinaia o migliaia di cluster in tutto il mondo. Le distribuzioni possono essere eseguite in modo dinamico e su richiesta. Dopo aver compilato, verificato e firmato le immagini del contenitore, il framework CSSC promuove le immagini del contenitore e gli artefatti pertinenti sono disponibili per la distribuzione tra registri per la fase Di distribuzione.

  1. Implementare i criteri di integrità delle immagini per verificare le firme delle immagini prima della distribuzione per assicurarsi che non siano state manomesse e provengano da autori attendibili.
  2. Implementare i criteri di analisi delle vulnerabilità per analizzare le immagini del contenitore per individuare le vulnerabilità, impostare le soglie in base ai livelli di gravità (CRITICAL, HIGH, MEDIUM, LOW) e distribuire solo immagini conformi.
  3. Implementare i criteri di conformità delle licenze per applicare restrizioni alla distribuzione di immagini del contenitore con licenze indesiderate.
  4. Implementare i criteri di provenienza per verificare che le immagini del contenitore provengano da origini e repository attendibili prima della distribuzione.
  5. Implementare i criteri relativi al ciclo di vita delle immagini per garantire che le immagini distribuite siano all'interno del supporto e valide, limitando la distribuzione delle immagini end-of-life e end-of-support.
  6. Generare e firmare report di vulnerabilità e malware per ogni immagine per evitare manomissioni e proteggere l'integrità.
  7. Allegare i report firmati alle immagini del contenitore per la visibilità e la convalida della conformità durante la distribuzione.
  8. Verificare i metadati dell'immagine del contenitore, inclusi SBOMs, firme di immagini, report sulle vulnerabilità, metadati del ciclo di vita e dati di provenienza.
  9. Implementare meccanismi di controllo di ammissione per applicare i criteri di distribuzione e limitare la distribuzione di immagini del contenitore non conformi.
  10. Automatizzare i processi di distribuzione con pipeline CI/CD, integrando i controlli di convalida e verifica delle immagini.
  11. Monitorare continuamente le immagini distribuite e applicare la conformità per rilevare nuove vulnerabilità, deviazioni di conformità ed eseguire azioni correttive in base alle esigenze.
  12. Registrare le attività di distribuzione e condurre controlli regolari per garantire la conformità agli standard di sicurezza e conformità.
  13. Implementare procedure di correzione automatizzate o manuali per risolvere gli incidenti di sicurezza o le deviazioni di conformità.
  14. Documentare il processo di distribuzione, inclusi i passaggi eseguiti, gli strumenti usati e le eventuali misure di sicurezza implementate per scopi di riferimento e controllo futuri.

Microsoft consiglia di convalidare i metadati delle immagini in fase di distribuzione e di distribuire solo immagini del contenitore da registri attendibili. Per proteggere i carichi di lavoro nativi del cloud, è consigliabile seguire le procedure seguenti.

  • Applicare i criteri di distribuzione che verificano i metadati e limitano le immagini del contenitore non conformi. Ciò impedisce la distribuzione di immagini non approvati.
  • Applicare i criteri di distribuzione che convalidano le firme delle immagini prima della distribuzione delle immagini. In questo modo le immagini usate per la distribuzione provengono da un autore attendibile e non sono state manomesse.
  • Applicare i criteri di distribuzione in base al punteggio di vulnerabilità. In questo modo si impedisce la distribuzione di immagini con vulnerabilità superiori a una determinata soglia (CRITICAL, HIGH, MEDIUM, LOW).
  • Applicare i criteri di distribuzione che verificano le informazioni sul ciclo di vita per garantire che le immagini di fine del supporto non vengano usate nella distribuzione.
  • Assicurarsi che l'ambiente di distribuzione e la piattaforma dispongano di connettività di rete sicura.
  • Richiedere l'autenticazione rigorosa, il controllo di accesso e le autorizzazioni dei file per negare l'accesso non autorizzato alla piattaforma di distribuzione. In questo modo si evitano potenziali perdite di credenziali o modifiche non autorizzate.
  • Automatizzare il processo di verifica nella pipeline CI/CD.

Obiettivi di sicurezza nella fase di distribuzione

Avere un flusso di lavoro ben definito per la distribuzione delle immagini consente alle aziende di aumentare la sicurezza e ridurre la superficie di attacco nella catena di fornitura per i contenitori. La fase di distribuzione del framework CSSC è progettata per soddisfare gli obiettivi di sicurezza seguenti.

Distribuire immagini da origini attendibili e conformi

I criteri di sicurezza devono essere implementati durante la fase di distribuzione per verificare che le immagini del contenitore provenano da origini attendibili e non vengano manomesse. L'integrità e l'autenticità possono essere convalidate verificando le firme delle immagini del contenitore prima della distribuzione.

Implementare i criteri di sicurezza del controllo di ammissione

I criteri di sicurezza devono essere implementati durante la fase di distribuzione per verificare che le immagini del contenitore siano conformi. Questo risultato viene ottenuto verificando le immagini del contenitore rispetto ai metadati di sicurezza seguenti: vulnerabilità e report malware, firma di immagine, SBOM, metadati del ciclo di vita delle immagini e metadati di provenienza.

Strumenti e servizi per la convalida dei metadati delle immagini e l'applicazione dei criteri di convalida

La ratifica è un progetto open source che consente ai cluster Kubernetes di verificare i metadati di sicurezza prima della distribuzione e di ammettere solo immagini conformi ai criteri di ammissione. È consigliabile configurare La ratifica e Gatekeeper per consentire l'esecuzione solo di immagini contenitore attendibili e conformi nei cluster Kubernetes.

Gatekeeper è un progetto open source e CNF che fornisce un controller di ammissione dinamico e un motore di criteri per definire, applicare e controllare i criteri nei cluster Kubernetes in modo standardizzato.

Criteri di Azure estende Gatekeeper per consentire l'applicazione di criteri predefiniti nei cluster servizio Azure Kubernetes per controllare o bloccare le distribuzioni che fanno riferimento a immagini del contenitore da registri esterni o origini non attendibili.

Strumenti per il collegamento dei metadati dell'immagine

ORAS è un progetto CNF che consente di archiviare e gestire gli artefatti nei registri conformi a OCI. ORAS consente di archiviare e gestire qualsiasi tipo di artefatto, tra cui immagini del contenitore, metadati dell'immagine e altro ancora, in un registro conforme a OCI. Fornisce anche un set di strumenti da riga di comando che semplificano l'interazione con i registri conformi a OCI. È consigliabile usare ORAS per eseguire il push dei report di vulnerabilità e malware generati, SBOM, metadati del ciclo di vita delle immagini e metadati di provenienza insieme all'immagine associata al Registro di sistema.

Strumenti per la firma e la verifica delle immagini e dei metadati del contenitore

Il progetto notario è un progetto open source che contiene un set di specifiche e strumenti destinati a fornire standard cross-industry per proteggere le catene di fornitura software tramite firma e verifica, portabilità della firma e gestione delle chiavi/certificati. La notazione è uno strumento della supply chain sviluppato dalla community Notary Project che supporta la firma e la verifica degli artefatti nei registri conformi a Open Container Initiative (OCI) che consentono la portabilità e l'interoperabilità delle firme. Fornisce anche l'integrazione con soluzioni di gestione delle chiavi di terze parti tramite un modello di plug-in, abilitando l'estendibilità. È consigliabile usare gli strumenti Notary Project per firmare immagini e metadati del contenitore per garantire l'autenticità e la mancata manomissione.

Passaggi successivi

Vedere la panoramica della fase Di esecuzione per distribuire in modo sicuro le immagini del contenitore.