Informazioni sul rilevamento delle minacce di GKE


Questa pagina descrive GKE Threat Detection, che ti consente di eseguire la scansione dei tuoi cluster GKE idonei per rilevare le minacce attive nella dashboard della postura di sicurezza di GKE. Lo strumento GKE la dashboard della security posture consente di abilitare diverse nei cluster GKE idonei e mostra azioni consigli per aiutarti a risolvere i problemi di sicurezza.

Come funziona

GKE Threat Detection è una soluzione avanzata la funzionalità di dashboard della security posture disponibile Utenti di GKE Enterprise. Quando i cluster GKE vengono in un parco risorse, il rilevamento delle minacce di GKE valuta Audit log GKE in Cloud Logging rispetto a un insieme predefinito e regole per le minacce relative a cluster e carichi di lavoro. Se viene rilevata una minaccia, nella dashboard della postura di sicurezza di GKE viene visualizzato un rilevamento con una descrizione della minaccia, il potenziale impatto e le azioni consigliate per mitigarla.

Tutti i cluster GKE registrati nel tuo parco risorse sono continuamente analizzate per rilevare eventuali minacce attive. Classifichiamo le minacce rilevate MITRARE le tattiche ATT&CK®.

Il rilevamento delle minacce di GKE si basa sul servizio Event Threat Detection di Security Command Center. Nella dashboard della strategia di sicurezza di GKE, solo il sottoinsieme vengono valutate le regole applicabili a GKE.

Funzionalità incluse della strategia di sicurezza di GKE

Il rilevamento delle minacce di GKE è incluso nel livello avanzato della scansione della security posture di Kubernetes. Quando attivi il rilevamento delle minacce per GKE in un cluster, attivi anche le seguenti funzionalità di scansione:

Utilizzo nell'ambito di un'ampia strategia di sicurezza

Il rilevamento delle minacce in GKE è una delle varie osservabilità della sicurezza prodotti da utilizzare nel tuo ambiente. Ti consigliamo vivamente di utilizzare altre funzionalità della dashboard della posizione di sicurezza di GKE, come la scansione delle vulnerabilità, per assicurarti di monitorare i tuoi cluster per una serie di problemi di sicurezza. Per saperne di più, consulta Informazioni sulla dashboard della postura di sicurezza nella documentazione di GKE.

Ti consigliamo inoltre di implementare il maggior numero possibile di misure di sicurezza descritte in Migliora la sicurezza del cluster nei tuoi cluster e carichi di lavoro.

Prezzi

Il rilevamento delle minacce per GKE è offerto senza costi aggiuntivi tramite con GKE Enterprise.

Regole predefinite per il rilevamento delle minacce per GKE

La tabella seguente descrive le regole di valutazione in base alle quali Il rilevamento delle minacce per GKE valuta il tuo controllo GKE log:

Nome visualizzato Nome API Tipi di origini log Descrizione
Evasione della difesa: deployment di emergenza del carico di lavoro creatoAnteprima BINARY_AUTHORIZATION_BREAKGLASS_WORKLOAD_CREATE Audit log di Cloud:
Log delle attività di amministrazione
Rileva il deployment di carichi di lavoro usando il flag di deployment di emergenza per eseguire l'override. Autorizzazione binaria i controlli di sicurezza.
Evasione della difesa: deployment di emergenza del carico di lavoro aggiornataAnteprima BINARY_AUTHORIZATION_BREAKGLASS_WORKLOAD_UPDATE Audit log di Cloud:
Log delle attività di amministrazione
Rileva l'aggiornamento dei carichi di lavoro usando il flag di deployment di emergenza per eseguire l'override Autorizzazione binaria i controlli di sicurezza.
Scoperta: può ottenere il controllo di oggetti Kubernetes sensibili GKE_CONTROL_PLANE_CAN_GET_SENSITIVE_OBJECT Audit log di Cloud:
Log di accesso ai dati GKE

Un utente potenzialmente malintenzionato ha tentato di determinare quali oggetti sensibili GKE su cui possono eseguire query utilizzando il comando kubectl auth can-i get. In particolare, la regola rileva se l'attore ha cercato Accesso API per i seguenti oggetti:

Escalation dei privilegi: modifiche agli oggetti RBAC Kubernetes sensibili GKE_CONTROL_PLANE_EDIT_SENSITIVE_RBAC_OBJECT Audit log di Cloud:
GKE Log delle attività di amministrazione
Per eseguire l’escalation del privilegio, un utente potenzialmente malintenzionato ha tentato di modificare un Accesso basato sui ruoli ClusterRole, RoleBinding o ClusterRoleBinding di controllo (RBAC) dell'oggetto cluster-admin sensibile utilizzando una richiesta PUT o PATCH.
Escalation dei privilegi: crea una richiesta CSR Kubernetes per il certificato principale GKE_CONTROL_PLANE_CSR_FOR_MASTER_CERT Audit log di Cloud:
log GKE Attività di amministrazione
Un utente potenzialmente malintenzionato ha creato un certificato master Kubernetes richiesta di firma (CSR), che fornisce all'utente cluster-admin .
Escalation dei privilegi: creazione di associazioni Kubernetes sensibili GKE_CONTROL_PLANE_CREATE_SENSITIVE_BINDING Audit log di Cloud:
Audit log delle attività di amministrazione IAM
Per eseguire l'escalation del privilegio, un utente potenzialmente malintenzionato ha tentato di creare un nuovo oggetto RoleBinding o ClusterRoleBinding per il ruolo cluster-admin.
Escalation dei privilegi: recupera informazioni su CSR Kubernetes con credenziali bootstrap compromesse GKE_CONTROL_PLANE_GET_CSR_WITH_COMPROMISED_BOOTSTRAP_CREDENTIALS Audit log di Cloud:
Log di accesso ai dati di GKE
Un utente potenzialmente malintenzionato ha eseguito una query per ottenere un certificato di firma del cliente (CSR), con il comando kubectl, utilizzando le credenziali di bootstrap compromesse.
Escalation dei privilegi: avvia un container Kubernetes con privilegi GKE_CONTROL_PLANE_LAUNCH_PRIVILEGED_CONTAINER Audit log di Cloud:
GKE Log delle attività di amministrazione

Un utente potenzialmente malintenzionato ha creato un pod contenente container con privilegi oppure e i container con funzionalità di escalation dei privilegi.

Il campo privileged di un container con privilegi è impostato su true. Il campo allowPrivilegeEscalation di un container con funzionalità di escalation dei privilegi è impostato su true. Per ulteriori informazioni, consulta SecurityContext v1 core nella documentazione di Kubernetes.

Accesso con credenziali: secret a cui è stato eseguito l'accesso nello spazio dei nomi Kubernetes SECRETS_ACCESSED_IN_KUBERNETES_NAMESPACE Audit log di Cloud:
GKE Log di accesso ai dati
Rileva quando un account di servizio accede a secret o token di account di servizio nell'attuale spazio dei nomi Kubernetes.
Accesso iniziale: risorsa GKE anonima creata da internet anteprima GKE_RESOURCE_CREATED_ANONYMOUSLY_FROM_INTERNET Audit log di Cloud:
GKE Log delle attività di amministrazione
Rileva gli eventi di creazione di risorse da utenti internet effettivamente anonimi.
Accesso iniziale: risorsa GKE modificata in modo anonimo da internet Anteprima GKE_RESOURCE_MODIFIED_ANONYMOUSLY_FROM_INTERNET Audit log di Cloud:
GKE Log delle attività di amministrazione
Rileva gli eventi di manipolazione delle risorse da parte di utenti internet effettivamente anonimi.
Escalation dei privilegi: a utenti anonimi è stato concesso l'accesso al cluster GKE in modo efficace Anteprima GKE_ANONYMOUS_USERS_GRANTED_ACCESS Audit log di Cloud:
GKE Log delle attività di amministrazione

Un utente ha creato un'associazione RBAC che fa riferimento a uno dei seguenti utenti o gruppi:

  • system:anonymous
  • system:unauthenticated
  • system:authenticated

Questi utenti e gruppi sono effettivamente anonimi e devono essere evitati quando si creano associazioni di ruoli o associazioni di ruoli del cluster a qualsiasi ruolo RBAC. Rivedi l'associazione per assicurarti che sia necessaria. Se la associazione non è necessaria, rimuovila.

Esecuzione: esecuzione sospetto o collegamento a un pod di sistema Anteprima GKE_SUSPICIOUS_EXEC_ATTACH Audit log di Cloud:
GKE Log delle attività di amministrazione
Qualcuno ha utilizzato i comandi exec o attach per ottenere una shell o eseguire un comando su un container in esecuzione nello spazio dei nomi kube-system. Questi metodi vengono talvolta utilizzati per scopi legittimi di debug. Tuttavia, lo spazio dei nomi kube-system è destinato agli oggetti di sistema creati da Kubernetes ed è necessario rivedere l'esecuzione imprevista di comandi o la creazione della shell.
Escalation dei privilegi: carico di lavoro creato con un percorso host sensibile anteprima GKE_SENSITIVE_HOSTPATH Audit log di Cloud:
GKE Log delle attività di amministrazione
Qualcuno ha creato un carico di lavoro contenente un montaggio del volume hostPath in un percorso sensibile nel file system del nodo host. L'accesso a questi percorsi nel file system dell'host può essere utilizzato per accedere a informazioni riservate o sensibili sul nodo e per gli escape dei container. Se possibile, non consentire alcun volume hostPath nel cluster.
Escalation dei privilegi: anteprima del carico di lavoro con shareProcessNamespace abilitato GKE_SHAREPROCESSNAMESPACE_POD Audit log di Cloud:
GKE Log delle attività di amministrazione
Un utente ha eseguito il deployment di un carico di lavoro con l'opzione shareProcessNamespace impostata su true, che consente a tutti i container di condividere lo stesso spazio dei nomi del processo Linux. Ciò potrebbe consentire a un container non attendibile o compromesso di aumentare i privilegi accedendo e controllando le variabili di ambiente, la memoria e altri dati sensibili dai processi in esecuzione in altri container.
Escalation dei privilegi: ClusterRole con verbi con privilegi Anteprima GKE_CLUSTERROLE_PRIVILEGED_VERBS Audit log di Cloud:
log attività di amministrazione GKE
Qualcuno ha creato un RBAC ClusterRole contenente i verbi bind, escalate o impersonate. Un soggetto associato a un ruolo con questi verbi può impersonare altri utenti con privilegi superiori, associarsi a Roles o ClusterRoles aggiuntivi contenenti autorizzazioni aggiuntive o modificare le proprie autorizzazioni ClusterRole. Questi soggetti potrebbero quindi ottenere i privilegi cluster-admin.
Escalation dei privilegi: ClusterRoleBinding al ruolo con privilegi Anteprima GKE_CRB_CLUSTERROLE_AGGREGATION_CONTROLLER Audit log di Cloud:
log attività di amministrazione GKE
Qualcuno ha creato un ClusterRoleBinding RBAC che fa riferimento al system:controller:clusterrole-aggregation-controller ClusterRole predefinito. Questo ClusterRole predefinito ha il verbo escalate, che consente ai soggetti di modificare i privilegi dei propri ruoli, consentendo l'escalation dei privilegi.
Evasione della difesa: richiesta di firma del certificato (CSR) eliminata manualmente Anteprima GKE_MANUALLY_DELETED_CSR Audit log di Cloud:
log attività di amministrazione GKE
Qualcuno ha eliminato manualmente una richiesta di firma del certificato (CSR). I CSR vengono rimossi automaticamente da un controller di garbage collection, ma i malintenzionati potrebbero eliminarli manualmente per eludere il rilevamento. Se la CSR eliminata era relativa a un certificato approvato ed emesso, l'utente potenzialmente malintenzionato ora dispone di un metodo di autenticazione aggiuntivo per accedere al cluster. Le autorizzazioni associate al certificato variano a seconda dell'oggetto incluso, ma possono essere molto privilegiate. Kubernetes non supporta la revoca dei certificati.
Accesso alle credenziali: tentativo di approvare la richiesta di firma del certificato (CSR) di Kubernetes non riuscito Anteprima GKE_APPROVE_CSR_FORBIDDEN Audit log di Cloud:
GKE Log delle attività di amministrazione
Qualcuno ha tentato di approvare manualmente una richiesta di firma del certificato (CSR), ma l'azione non è riuscita. La creazione di un certificato per l'autenticazione del cluster è un metodo comune utilizzato dagli hacker per creare un accesso permanente a un cluster compromesso. Le autorizzazioni associate al certificato variano a seconda dell'argomento trattato, ma possono avere privilegi elevati.
Accesso con credenziali: anteprima della richiesta di firma del certificato (CSR) Kubernetes approvata manualmente GKE_CSR_APPROVED Audit log di Cloud:
log attività di amministrazione GKE
Qualcuno ha approvato manualmente una richiesta di firma del certificato (CSR). La creazione di un certificato per l'autenticazione del cluster è un metodo comune utilizzato dagli hacker per creare un accesso permanente a un cluster compromesso. Le autorizzazioni associate al certificato variano a seconda dell'argomento trattato, ma possono avere privilegi elevati.
Esecuzione: pod Kubernetes creato con potenziali argomenti shell inversa anteprima GKE_REVERSE_SHELL_POD Audit log di Cloud:
GKE Log delle attività di amministrazione
Un utente ha creato un pod contenente comandi o argomenti comunemente associati a una shell inversa. Gli aggressori utilizzano le shell inverse per espandere o mantenere l’accesso iniziale a un cluster ed eseguire comandi arbitrari.
Evasione della difesa: potenziale mascheramento dei pod Kubernetes Anteprima GKE_POD_MASQUERADING Audit log di Cloud:
log attività di amministrazione GKE
Un utente ha eseguito il deployment di un pod con una convenzione di denominazione simile a quella dei carichi di lavoro predefiniti creati da GKE per il normale funzionamento del cluster. Questa tecnica è chiamata mascheramento.
Escalation dei privilegi: nomi container Kubernetes sospetti - Sfruttamento ed escape Anteprima GKE_SUSPICIOUS_EXPLOIT_POD Audit log di Cloud:
GKE Log delle attività di amministrazione
Un utente ha eseguito il deployment di un pod con una convenzione di denominazione simile agli strumenti comuni utilizzati per gli escape dei container o per eseguire altri attacchi al cluster.
Impatto: nomi di container Kubernetes sospetti - Estrazione di monete Anteprima GKE_SUSPICIOUS_CRYPTOMINING_POD Audit log di Cloud:
GKE Log delle attività di amministrazione
Un utente ha eseguito il deployment di un pod con una convenzione di denominazione simile ai comuni miner di criptovalute. Potrebbe trattarsi di un tentativo da parte di un utente malintenzionato che ha ottenuto l'accesso iniziale al cluster di utilizzare le risorse del cluster per il mining di criptovaluta.

Come abilitare il rilevamento delle minacce per GKE

Per abilitare il rilevamento delle minacce per GKE, devi registrare un cluster idoneo in il livello avanzato per la scansione della security posture di Kubernetes. Vengono attivate anche tutte le funzionalità incluse nel livello di base della scansione della strategia di sicurezza di Kubernetes, come i controlli della configurazione del carico di lavoro e la visualizzazione dei bollettini sulla sicurezza.

Per saperne di più, vedi Individua le minacce nei cluster utilizzando GKE Threat Detection.

Limitazioni

Al rilevamento delle minacce per GKE si applicano le seguenti limitazioni:

  • Disponibile solo in GKE Enterprise
  • Disponibile solo per i progetti nelle organizzazioni
  • Non supporta le opzioni di Security Command Center come la configurazione della residenza dei dati
  • Mostra solo i risultati per i cluster registrati in un parco risorse
  • GKE conserva i risultati delle minacce a cui non sono più associati risorse interessate per un massimo di 180 giorni
  • Mostra solo i risultati per i cluster esistenti. Se elimini un cluster, Il rilevamento delle minacce per GKE non mostra più il risultato nel Dashboard della strategia di sicurezza di GKE.

Passaggi successivi