Condividi tramite


Panoramica della fase di esecuzione

La fase Di esecuzione è la quinta fase del framework CSSC (Containers Secure Supply Chain). Questa fase evidenzia l'analisi e il monitoraggio degli ambienti di runtime e la loro eliminazione di immagini obsolete e vulnerabili. Questa panoramica fornisce lo sfondo, gli obiettivi e gli obiettivi per la fase di esecuzione del framework CSSC.

Il framework CSSC (Containers Secure Supply Chain) di Microsoft identifica la necessità di eseguire contenitori con immagini attendibili e fornisce un set di procedure consigliate e strumenti per eseguire immagini in modo sicuro e ridurre la superficie di attacco del runtime. In questo articolo verranno illustrati gli obiettivi, le procedure consigliate e gli strumenti che è possibile usare nella fase Di esecuzione del framework CSSC.

Background

Attualmente, le aziende usano vari approcci per eseguire carichi di lavoro in contenitori conformi con immagini attendibili. Il monitoraggio dei carichi di lavoro distribuiti fornisce alle aziende la convalida che lo stato operativo effettivo è lo stato previsto. Le immagini del carico di lavoro diventano vulnerabili al momento della distribuzione o dopo la distribuzione. Le aziende vengono suggerite di analizzare continuamente gli ambienti di runtime e le immagini per rilevare quali carichi di lavoro sono ora vulnerabili e quali immagini non supportano per ricevere aggiornamenti della sicurezza o correzioni di bug.

La fase Di esecuzione del framework CSSC consiglia un set di passaggi e controlli di sicurezza che devono essere implementati per garantire la sicurezza dei contenitori in esecuzione e degli host di runtime, ad esempio il riciclo tempestivo dei nodi, l'aggiornamento dei contenitori con immagini del contenitore aggiornate e con patch, la rimozione delle immagini contenitore non aggiornate e non in esecuzione e la prevenzione del comportamento indesiderato dei contenitori.

Microsoft consiglia di eseguire continuamente vulnerabilità e scanner di malware per carichi di lavoro e runtime in contenitori. Aggiornare regolarmente i contenitori e i nodi e mantenere puliti i nodi sono procedure efficaci per proteggere le applicazioni in contenitori da compromettere.

  • Analizzare regolarmente vulnerabilità e malware e controllare i metadati del ciclo di vita dell'immagine per identificare le immagini che devono essere patch e aggiornate. Pulire regolarmente le immagini non aggiornate dalla cache nel nodo per ridurre la probabilità che un'immagine non aggiornata vulnerabile possa essere usata da attori malintenzionati
  • Configurare meccanismi di autenticazione e autorizzazione avanzati in ambienti e contenitori di hosting, nonché l'esecuzione di contenitori come non radice perché gli utenti malintenzionati non possono accedere ai sistemi con facilità e causare danni in caso di compromissione
  • Aggiornare regolarmente i contenitori e i nodi di lavoro. In questo modo si garantisce che i contenitori e i nodi siano in esecuzione con le patch e le correzioni di sicurezza più recenti
  • Ridurre la superficie di attacco limitando il contenitore e la porta del nodo, limitando l'accesso alla rete dei contenitori, abilitando tls reciproco.
  • Applicare vincoli di risorse ai contenitori, ad esempio controllare la quantità di memoria o la cpu che può essere usata da un contenitore, per ridurre il rischio di instabilità del sistema
  • Seguire le linee guida standard del settore, ad esempio benchmark CIS, ci edizione Standard linee guida, procedure consigliate per la supply chain del software CNF, linee guida NIST o linee guida per enti pubblici regionali in base alle esigenze

Flusso di lavoro per l'analisi continua e il monitoraggio degli ambienti di runtime

La fase Esegui include un flusso di lavoro per analizzare e monitorare continuamente gli ambienti di runtime. Il flusso di lavoro Esegui fase si applica all'eliminazione delle immagini contenitore vulnerabili e obsolete. È fondamentale mantenere protetti gli ambienti di runtime, il flusso di lavoro segue questa procedura:

  1. Analizzare continuamente le vulnerabilità e il malware nei carichi di lavoro in contenitori e negli ambienti di runtime per verificare la presenza di potenziali minacce alla sicurezza.
  2. Aggiornare regolarmente i contenitori e i nodi di lavoro per assicurarsi che siano in esecuzione con le patch e le correzioni di sicurezza più recenti.
  3. Aggiornare regolarmente i contenitori e i nodi per proteggere le applicazioni in contenitori da compromissioni ed evitare il rischio di vulnerabilità da patch e correzioni.
  4. Controllare i metadati del ciclo di vita dell'immagine per identificare le immagini che devono essere aggiornate e sicure.
  5. Pulire regolarmente le immagini non aggiornate dalla cache nel nodo per evitare immagini non aggiornate vulnerabili usate da attori malintenzionati.
  6. Configurare meccanismi di autenticazione avanzata e autorizzazione in ambienti di hosting e contenitori, nonché l'esecuzione di contenitori per impedire agli utenti malintenzionati di accedere ai sistemi con facilità e causare danni in caso di compromissione.
  7. Ridurre la superficie di attacco limitando la porta del contenitore e del nodo, limitando l'accesso alla rete dei contenitori, abilitando tls reciproco e applicando vincoli di risorse ai contenitori, ad esempio controllando la quantità di memoria o la cpu che un contenitore può usare, per ridurre il rischio di instabilità del sistema.

Obiettivi di sicurezza nella fase di esecuzione

La fase di esecuzione del framework CSSC è progettata per soddisfare gli obiettivi di sicurezza seguenti.

Monitorare il runtime per ridurre l'esecuzione di immagini vulnerabili

Analizzare i contenitori per individuare vulnerabilità e conformità ai criteri dell'organizzazione. Verificare se i contenitori usano la versione più recente delle immagini.

Mantenere aggiornati i contenitori di runtime garantisce che i contenitori siano sempre privi di vulnerabilità e conformi ai criteri dell'organizzazione. Le immagini devono essere monitorate continuamente in tutte le fasi. Le nuove immagini della fase acquisizione o della fase di compilazione possono attivare l'aggiornamento dei contenitori di runtime nella fase Di esecuzione. Le immagini possono essere aggiornate per vari motivi, ad esempio la correzione delle vulnerabilità, la correzione del software che la licenza diventa non conforme e l'immagine diventa fine del supporto nel tempo. Tutti questi aggiornamenti attiveranno l'aggiornamento dei contenitori di runtime.

Impedire immagini non conformi e pulire immagini non aggiornate per ridurre al minimo il rischio di attacco

È comune che le pipeline CI/CD creino ed eseguano il push delle immagini nella piattaforma di distribuzione nella fase di distribuzione, ma spesso le immagini inutilizzate in un nodo di runtime potrebbero non essere rimosse in modo non corretto. Ciò può causare l'accumulo di bloat sul disco e una serie di immagini non conformi che si soffermano sui nodi. È probabile che le vulnerabilità esistano anche in immagini non aggiornati. La pulizia regolare di immagini non aggiornate può evitare l'analisi non necessaria e ridurre la superficie di attacco dell'ambiente di runtime.

Mantenere aggiornato l'ambiente di hosting e con configurazioni sicure

Mantenere aggiornato l'ambiente di hosting con le versioni di sicurezza e le patch del provider upstream o cloud attendibile. Assicurarsi un controllo di accesso rigoroso e un'autorizzazione di rete limitata per ridurre la superficie di attacco degli ambienti di runtime. Adottare il rilevamento in tempo reale di comportamenti imprevisti, errori di configurazione e attacchi nell'ambiente di hosting.

Microsoft offre un set di strumenti e servizi che consentono alle aziende di implementare i passaggi consigliati nel flusso di lavoro Della fase di esecuzione e di soddisfare gli obiettivi di sicurezza elencati in precedenza.

Strumenti e servizi per l'analisi delle vulnerabilità e l'applicazione di patch alle immagini

Microsoft Defender per il cloud è la soluzione nativa del cloud per migliorare, monitorare e gestire la sicurezza dei carichi di lavoro in contenitori. Microsoft Defender per il cloud offre strumenti di valutazione e gestione delle vulnerabilità per le immagini archiviate in Registro Azure Container ed esecuzione di contenitori.

Strumenti e servizi per la pulizia di immagini non conformi

Azure Image Cleaner esegue l'identificazione e la rimozione automatica delle immagini. Usare Azure Image Cleaner per pulire le immagini non aggiornate dai nodi Kubernetes per i carichi di lavoro dei contenitori del servizio Azure Kubernetes oppure usare l'eraser open source per l'ambiente Kubernetes non AKS o vanilla, che riduce il rischio di immagini non aggiornate e riduce il tempo necessario per pulirle.

Strumenti per aggiornare automaticamente il servizio di runtime

L'aggiornamento automatico del cluster offre un meccanismo di "imposta una volta, poi dimenticatene" che offre vantaggi tangibili in termini di tempo e costi operativi. Abilitare l'aggiornamento automatico del servizio Azure Kubernetes garantisce che i cluster siano aggiornati e non perdere le versioni di sicurezza o le patch del servizio Azure Kubernetes e upstream se si usa il servizio Azure Kubernetes.

Passaggi successivi

Per osservare in modo sicuro i contenitori e individuare i potenziali problemi di sicurezza della catena di fornitura nel tempo, vedere panoramica della fase Di osservabilità.