Questo documento descrive come utilizzare la scansione della postura di sicurezza di Kubernetes per trovare e mitigare i rischi per la sicurezza in GKE. Questo documento presuppone che tu conosca le seguenti informazioni:
La scansione della postura di sicurezza di Kubernetes è una funzionalità della dashboard della postura di sicurezza che ti aiuta a identificare e risolvere in modo proattivo le vulnerabilità di sicurezza nei cluster Google Kubernetes Engine (GKE). La scansione della postura di sicurezza di Kubernetes offre le seguenti funzionalità:
- Controllo della configurazione del workload
- Visualizzazione di bollettino sulla sicurezza utilizzabili
Questo documento è rivolto agli specialisti della sicurezza che monitorano i cluster per rilevare problemi di sicurezza. Per scoprire di più sui ruoli comuni e sulle attività di esempio a cui facciamo riferimento nei Google Cloud contenuti, consulta Ruoli e attività comuni degli utenti GKE.
Per scoprire come abilitare e utilizzare la scansione della postura di sicurezza di Kubernetes, consulta Controllare automaticamente i workload per rilevare problemi di configurazione.
Prezzi
Offerto senza costi aggiuntivi in GKE.
Le voci aggiunte a Cloud Logging sono soggette a prezzi di Cloud Logging.
Informazioni sul controllo della configurazione del workload
I workload di cui esegui il deployment su GKE devono avere una configurazione rafforzata che ne limiti la superficie di attacco. Il controllo manuale dei workload nei cluster per rilevare problemi di configurazione può essere difficile da eseguire su larga scala. Puoi utilizzare la dashboard della postura di sicurezza per controllare automaticamente la configurazione di tutti i workload in esecuzione su più cluster e restituire risultati utilizzabili e con punteggio, nonché consigli mirati per migliorare la postura di sicurezza.
Il controllo della configurazione del workload verifica ogni workload di cui è stato eseguito il deployment rispetto a un sottoinsieme di criteri negli standard di sicurezza dei pod. Il controllo della configurazione del workload viene eseguito sull'infrastruttura di Google e non utilizza risorse di calcolo sui nodi.
Vantaggi del controllo della configurazione del workload
- Automatizza il rilevamento di problemi di configurazione noti in tutti i workload.
- Ricevi consigli utili per migliorare la postura di sicurezza.
- Utilizza la Google Cloud console per ottenere una panoramica dei problemi di configurazione.
- Utilizza Logging per ottenere una traccia di controllo dei problemi per migliorare il reporting e l'osservabilità.
Come funziona il controllo della configurazione del workload
Per ogni workload di cui è stato eseguito il deployment idoneo, GKE esegue continuamente la scansione della specifica del workload e confronta i campi e i valori con i controlli definiti nel criterio di sicurezza sottostante. Ad esempio, un pod con spec.containers.securityContext.privileged=true viola lo standard di sicurezza dei pod di base e un pod con il campo spec.securityContext.runAsNonRoot impostato su false viola lo standard con restrizioni. Per un elenco dei criteri di sicurezza
controllati da GKE, consulta
Cosa controlla il controllo della configurazione del workload?.
Dopo la scansione e il rilevamento dei problemi, GKE valuta la gravità dei problemi di configurazione rilevati in base alle misure di rafforzamento della sicurezza integrate. GKE assegna una valutazione della gravità che può indicare la velocità con cui rispondi al problema. La Google Cloud console mostra i risultati e i comportamenti consigliati che puoi intraprendere per risolvere i problemi. GKE aggiunge anche voci a Cloud Logging per il tracciamento e il controllo.
Cosa controlla il controllo della configurazione del workload?
| Problema | Campi | Valori consentiti | Gravità |
|---|---|---|---|
Spazi dei nomi dell'host I pod che condividono gli spazi dei nomi dell'host consentono ai processi del pod di comunicare con i processi host e di raccogliere informazioni sull'host, il che potrebbe portare a un attacco container escape. |
|
|
Alta |
Container con privilegi I container con privilegi consentono un accesso host quasi senza restrizioni. Condividono gli spazi dei nomi con l'host e non hanno gruppo di controllo, seccomp, AppArmor e limitazioni delle funzionalità. |
|
|
Alta |
Accesso alla porta host L'esposizione di una porta host a un container potrebbe consentire al container di intercettare il traffico di rete che punta a una porta host o di ignorare le regole di controllo dell'accesso alla rete, come quelle di un NetworkPolicy. |
|
|
Alta |
Funzionalità non predefinite Un container ha capacità assegnate che potrebbero consentire un attacco container escape. |
|
|
Media |
Montaggio di volumi del percorso host I volumi |
spec.volumes[*].hostPath |
Non definito o nullo | Media |
Maschera Il tipo di montaggio |
|
|
Media |
Maschera sysctl non sicura Un pod può essere configurato per consentire la modifica dei parametri del kernel non sicuri
utilizzando il file system virtuale |
spec.securityContext.sysctls[*].name |
|
Media |
Esecuzione come utente non root Puoi consentire esplicitamente l'esecuzione di un container come utente root se la
|
|
true |
Media |
Escalation dei privilegi Un container può essere configurato in modo esplicito per consentire l'escalation dei privilegi al momento dell'esecuzione. Ciò consente a un processo creato all'interno del container di eseguire un set-user-id, set-group-id o un file eseguibile per ottenere i privilegi specificati dall'eseguibile. La mancanza di un controllo di sicurezza preventivo aumenta il rischio di attacco container escape. |
|
false |
Media |
Profilo AppArmor non limitato Un container può essere configurato in modo esplicito per non essere limitato da AppArmor. Questa configurazione contribuisce a garantire che nessun profilo AppArmor venga applicato al container e che quindi non sia vincolato da questi profili. Se si disabilita il controllo di sicurezza preventivo aumenta il rischio di attacco container escape. |
metadata.annotations["container.apparmor.security.beta.kubernetes.io/*"] |
false |
Bassa |
Inoltre, GKE verifica la presenza di eventuali associazioni RoleBinding o ClusterRoleBinding RBAC che fanno riferimento a uno dei seguenti utenti o gruppi:
system:anonymoussystem:authenticatedsystem:unauthenticated
Se esistono associazioni RBAC che fanno riferimento a questi utenti o gruppi, nella dashboard della postura di sicurezza viene visualizzato un risultato denominato Accesso al cluster GKE concesso a utenti anonimi con gravità Media. Questi utenti e gruppi sono effettivamente anonimi e non devono essere utilizzati in RoleBinding o ClusterRoleBinding. Per saperne di più, consulta Evitare ruoli e gruppi predefiniti.
Informazioni sulla visualizzazione dei bollettino sulla sicurezza
Quando viene rilevata una vulnerabilità in GKE, la correggiamo e pubblichiamo un bollettino sulla sicurezza per la vulnerabilità. Per informazioni sull'identificazione, sulla correzione e sulle tempistiche, consulta Correzione della sicurezza di GKE.
La dashboard della postura di sicurezza mostra i bollettini sulla sicurezza che interessano i cluster, i workload e i pool di nodi in modalità Standard. Questa funzionalità fa parte della funzionalità security posture di Kubernetes della dashboard della security posture ed è abilitata automaticamente quando crei un cluster Autopilot o Standard. Per abilitare la scansione della postura di sicurezza di Kubernetes, usa le istruzioni riportate in Controllare automaticamente i workload per rilevare problemi di configurazione.
La Google Cloud console mostra dettagli come i cluster interessati, versioni e versioni di patch consigliate per gli upgrade per mitigare la vulnerabilità. Vengono visualizzati solo i bollettini per i quali è disponibile una mitigazione nella regione o nella zona del cluster Google Cloud .
Per visualizzare i bollettini per i cluster di cui hai eseguito la registrazione alla scansione della postura di sicurezza di Kubernetes, vai alla dashboard della postura di sicurezza:
Nella sezione Bollettini sulla sicurezza vengono visualizzati tutti i bollettini disponibili che interessano il tuo ambiente.
Passaggi successivi
- Scopri di più sulla dashboard della postura di sicurezza.
- Scopri come implementare il controllo della configurazione del workload.