Applicazione delle patch di sicurezza

Questo documento descrive come Google gestisce le vulnerabilità di sicurezza e le patch per Google Kubernetes Engine (GKE) e GKE Enterprise. Se non diversamente indicato, GKE Enterprise include le piattaforme GKE e GKE Enterprise.

Questa pagina è dedicata agli esperti di sicurezza che supportano la risoluzione di problemi o vulnerabilità di sicurezza che richiedono assistenza strategica, come incidenti e problemi riassegnati dall'assistenza. Per scoprire di più sui ruoli comuni e sulle attività di esempio a cui facciamo riferimento nei contenuti, consulta Ruoli e attività comuni degli utenti di GKE Enterprise. Google Cloud

Responsabilità condivisa per l'applicazione di patch

L'applicazione di patch è una responsabilità condivisa tra Google e il cliente. Piattaforme diverse hanno responsabilità condivise diverse. Per saperne di più, consulta i seguenti argomenti su ciascuna piattaforma:

Come scopriamo le vulnerabilità

Google ha investito molto nella progettazione e nel rafforzamento della sicurezza proattiva, ma anche i sistemi software meglio progettati possono presentare vulnerabilità. Per trovare queste vulnerabilità e correggerle prima che possano essere sfruttate, Google ha effettuato investimenti significativi su più fronti.

Ai fini dell'applicazione di patch, GKE Enterprise è un livello del sistema operativo con container in esecuzione sopra. I sistemi operativi, Container-Optimized OS o Ubuntu, sono protetti e contengono la quantità minima di software necessaria per eseguire i container. Le funzionalità di GKE Enterprise vengono eseguite come container sopra le immagini di base.

Google identifica e corregge le vulnerabilità e le patch mancanti nei seguenti modi:

  • Container-Optimized OS: Google analizza le immagini per identificare potenziali vulnerabilità e patch mancanti. Il team di Container-Optimized OS esamina e risolve i problemi.

  • Ubuntu: Canonical fornisce a Google build del sistema operativo a cui sono state applicate tutte le patch di sicurezza disponibili.

Google esegue la scansione dei container utilizzando Container Registry Artifact Analysis per rilevare vulnerabilità e patch mancanti nei container Kubernetes e gestiti da Google. Se sono disponibili correzioni, lo scanner avvia automaticamente il processo di applicazione delle patch e di rilascio.

Oltre alla scansione automatica, Google rileva e corregge le vulnerabilità sconosciute agli scanner nei seguenti modi.

Google esegue audit, penetration test e rilevamento di vulnerabilità propri su tutte le piattaforme GKE Enterprise. Team specializzati all'interno di Google e fornitori di sicurezza di terze parti affidabili conducono le proprie ricerche sugli attacchi. Google ha collaborato anche con la CNCF per fornire gran parte delle competenze di consulenza organizzativa e tecnica per l'audit di sicurezza di Kubernetes.

Google collabora attivamente con la comunità di ricerca sulla sicurezza attraverso diversi programmi di premi per le vulnerabilità. Un programma di premi per le vulnerabilità dedicato offre premi significativi, incluso un premio di 133.337 $per la migliore vulnerabilità del cloud riscontrata ogni anno. Google Cloud Per GKE, esiste un programma che premia i ricercatori di sicurezza se riescono a violare i nostri controlli di sicurezza. Il programma copre tutte le dipendenze software di GKE.

Google collabora con altri partner del settore e di software open source che condividono vulnerabilità, ricerche sulla sicurezza e patch prima del rilascio pubblico della vulnerabilità. L'obiettivo di questa collaborazione è quello di correggere grandi parti dell'infrastruttura di internet prima che la vulnerabilità venga annunciata al pubblico. In alcuni casi, Google contribuisce a questa community con le vulnerabilità rilevate. Ad esempio, il progetto Zero di Google ha scoperto e reso pubbliche le vulnerabilità Spectre e Meltdown. Il Google Cloud team di sicurezza trova e corregge regolarmente vulnerabilità nella macchina virtuale basata su kernel (KVM).

La collaborazione di Google in materia di sicurezza avviene a molti livelli. A volte si verifica formalmente tramite programmi in cui le organizzazioni si registrano per ricevere notifiche in anteprima sulle vulnerabilità del software per prodotti come Kubernetes e Envoy. La collaborazione avviene anche in modo informale grazie al nostro coinvolgimento in molti progetti open source come il kernel Linux, i runtime dei container, la tecnologia di virtualizzazione e altri.

Per Kubernetes, Google è un membro attivo e fondatore del Security Response Committee (SRC) e ha scritto gran parte della procedura di rilascio della sicurezza. Google è membro dell'elenco dei distributori di Kubernetes che riceve una notifica preventiva delle vulnerabilità ed è coinvolta nel triage, nell'applicazione di patch, nello sviluppo di misure di mitigazione e nella comunicazione di quasi tutte le vulnerabilità di sicurezza gravi di Kubernetes. Google ha anche scoperto diverse vulnerabilità di Kubernetes in prima persona.

Sebbene le vulnerabilità meno gravi vengano scoperte e corrette al di fuori di questi processi, la maggior parte delle vulnerabilità di sicurezza critiche viene segnalata privatamente tramite uno dei canali elencati in precedenza. La segnalazione anticipata consente a Google di avere tempo prima che la vulnerabilità diventi pubblica per studiare in che modo influisce su GKE Enterprise, sviluppare patch o mitigazioni e preparare consigli e comunicazioni per i clienti. Se possibile, Google applica patch a tutti i cluster prima del rilascio pubblico della vulnerabilità.

Classificazione delle vulnerabilità

GKE investe molto nella protezione dell'intero stack, inclusi i livelli di sistema operativo, container, Kubernetes e rete, oltre a impostare valori predefiniti validi, configurazioni protette e componenti gestiti. Insieme, questi sforzi contribuiscono a ridurre l'impatto e la probabilità di vulnerabilità.

Il team di sicurezza di GKE Enterprise classifica le vulnerabilità in base al sistema di punteggio delle vulnerabilità di Kubernetes. Le classificazioni prendono in considerazione molti fattori, tra cui la configurazione e l'hardening della sicurezza di GKE e GKE Enterprise. A causa di questi fattori e degli investimenti che GKE effettua in sicurezza, le classificazioni delle vulnerabilità di GKE e GKE Enterprise potrebbero differire da altre fonti di classificazione.

La tabella seguente descrive le categorie di gravità delle vulnerabilità:

Gravità Descrizione
Critico Una vulnerabilità facilmente sfruttabile in tutti i cluster da un aggressore remoto non autenticato che porta alla compromissione completa del sistema.
Alta Una vulnerabilità facilmente sfruttabile per molti cluster che comporta la perdita di riservatezza, integrità o disponibilità.
Media Una vulnerabilità sfruttabile per alcuni cluster in cui la perdita di confidenzialità, integrità o disponibilità è limitata da configurazioni comuni, difficoltà dell'exploit stesso, accesso richiesto o interazione dell'utente.
Bassa Tutte le altre vulnerabilità. Lo sfruttamento è improbabile o le conseguenze dello sfruttamento sono limitate.

Consulta i bollettini sulla sicurezza per vulnerabilità, correzioni e mitigazioni di esempio e le relative valutazioni.

Come vengono corrette le vulnerabilità

L'applicazione di una patch a una vulnerabilità comporta l'upgrade a un nuovo numero di versione di GKE o GKE Enterprise. Le versioni di GKE e GKE Enterprise includono componenti con controllo delle versioni per il sistema operativo, i componenti Kubernetes e altri container che compongono la piattaforma GKE Enterprise. La correzione di alcune vulnerabilità richiede solo un upgrade del control plane, eseguito automaticamente da Google su GKE, mentre altre richiedono upgrade sia del control plane che dei nodi.

Per mantenere i cluster patchati e protetti dalle vulnerabilità di qualsiasi gravità, consigliamo di utilizzare l'upgrade automatico dei nodi su GKE (attivato per impostazione predefinita). Per i cluster registrati nei canali di rilascio, le release delle patch vengono promosse quando soddisfano i requisiti di qualifica di ciascun canale. Se hai bisogno di una patch di GKE prima che raggiunga il canale del tuo cluster, puoi eseguire manualmente l'upgrade alla versione della patch se la patch è nella stessa versione secondaria di una disponibile nel canale di rilascio del cluster.

Su altre piattaforme GKE Enterprise, Google consiglia di eseguire l'upgrade dei componenti GKE Enterprise almeno una volta al mese.

Alcuni scanner di sicurezza o controlli manuali della versione potrebbero presupporre erroneamente che un componente come runc o containerd non disponga di una patch di sicurezza specifica upstream. GKE applica regolarmente patch ai componenti ed esegue l'upgrade della versione del pacchetto solo quando necessario, il che significa che i componenti GKE sono funzionalmente simili alle loro controparti upstream anche se il numero di versione del componente GKE non corrisponde al numero di versione upstream. Per informazioni dettagliate su una CVE specifica, consulta i bollettini sulla sicurezza di GKE.

Tempistiche delle patch

L'obiettivo di Google è mitigare le vulnerabilità rilevate entro un periodo di tempo appropriato per i rischi che rappresentano. GKE è incluso nell'ATO provvisorio FedRAMP diGoogle Cloud, che richiede la correzione delle vulnerabilità note entro tempistiche specifiche in base al livello di gravità, come specificato nel controllo RA-5(d) della tabella "Summary of Continuous Monitoring Activities & Deliverables" (Riepilogo delle attività e dei risultati del monitoraggio continuo) nella guida alla strategia di monitoraggio continuo FedRAMP.

Per ogni vulnerabilità nota, l'obiettivo di GKE è rilasciare versioni patch che risolvano la vulnerabilità entro il periodo di tempo corrispondente. L'ATO provvisoria FedRAMP non include Google Distributed Cloud, GKE su AWS o GKE su Azure, ma miriamo agli stessi tempi di correzione per questi prodotti. Google Cloud Dopo che GKE rende disponibili le versioni patch per correggere una vulnerabilità nota, esegui l'upgrade dei cluster a queste versioni per rispettare le tempistiche di applicazione delle patch per la tua organizzazione.

Come vengono comunicate le vulnerabilità e le patch

La migliore fonte di informazioni aggiornate su vulnerabilità e patch di sicurezza è il feed dei bollettini di sicurezza per i seguenti prodotti:

  • GKE
  • Google Distributed Cloud
  • GKE su AWS
  • GKE su Azure
  • Google Distributed Cloud

Questi bollettini seguono uno schema di numerazione delle vulnerabilità comune Google Cloud e sono collegati dalla pagina principale dei bollettini Google Cloud e dalle note di rilascio di GKE. Ogni pagina dei bollettini di sicurezza ha un feed RSS a cui gli utenti possono iscriversi per ricevere aggiornamenti.

A volte le vulnerabilità vengono mantenute private sotto embargo per un periodo di tempo limitato. Gli embarghi contribuiscono a impedire la pubblicazione anticipata di vulnerabilità che potrebbero portare a tentativi di sfruttamento diffusi prima che possano essere adottate misure per risolverle. In situazioni di embargo, le note di rilascio fanno riferimento agli "aggiornamenti della sicurezza" fino a quando l'embargo non sarà stato revocato. Una volta terminato l'embargo, Google aggiorna le note di rilascio per includere le vulnerabilità specifiche.

Il team di sicurezza di GKE Enterprise pubblica bollettini sulla sicurezza per le vulnerabilità di gravità Alta e Critica. Quando è necessaria l'azione del cliente per risolvere queste vulnerabilità di gravità alta e critica, Google contatta i clienti via email. Inoltre, Google potrebbe contattare i clienti con contratti di assistenza tramite i canali di assistenza.