Sysdig
Learn Cloud Native

Sign up to receive our newsletter

Gestione del profilo di sicurezza di Kubernetes (KSPM)

Tutti avranno sentito almeno una volta parlare di gestione del profilo di sicurezza del cloud o CSPM, che rileva e corregge in modo automatico i problemi di sicurezza e di conformità nel cloud.

E invece, cos’è la gestione del profilo di sicurezza di Kubernetes, o KSPM? In un mondo dove sempre più workload vengono distribuiti su Kubernetes, la KSPM è diventata un importante elemento complementare della CSPM.

Ecco tutto ciò che c’è da sapere sulla gestione del profilo di sicurezza di Kubernetes e sulle migliori prassi per automatizzare la sicurezza e la conformità.

Cos’è la gestione del profilo di sicurezza di Kubernetes?

La gestione del profilo di sicurezza di Kubernetes, o KSPM, è l’utilizzo di strumenti automatici di sicurezza che consentono di rilevare e correggere problemi di sicurezza e conformità in un qualunque componente di Kubernetes.

Per esempio, KSPM potrebbe rilevare errori di configurazione nella definizione di un Role RBAC di Kubernetes che assegna a un utente diverso da un amministratore autorizzazioni che non dovrebbe avere, ad esempio la possibilità di creare nuovi pod. Oppure, uno strumento KSPM potrebbe avvisare di una configurazione di rete Kubernetes non sicura che consente la comunicazione tra pod in diversi namespace, un’impostazione che solitamente è bene non abilitare.

Perché la gestione del profilo di sicurezza di Kubernetes è importante?

Come parte di una più vasta strategia di sicurezza Kubernetes, gli strumenti KSPM consentono di valutare diversi aspetti importanti per la sicurezza.

Rilevamento di errori umani e sviste

KSPM è una soluzione che consente di effettuare un doppio controllo sulla sicurezza delle configurazioni utilizzate per gestire le risorse Kubernetes. Indipendentemente da quanto sodo lavorino i tecnici per garantire che le configurazioni che creano siano sicure per definizione, sussiste sempre il rischio che un errore umano o una svista determinino configurazioni non abbastanza sicure.

La gestione KSPM aiuta i team a trovare e correggere questi errori prima che portino a violazioni.

Gestione della sicurezza all’evolvere dei cluster

Kubernetes è ancora una tecnologia in rapida evoluzione e le configurazioni che risultano sicure per una versione di Kubernetes potrebbero smettere di esserlo se si passa a una versione più recente.

Per esempio, Kubernetes ha annunciato nel 2021 che le pod security policies, una delle risorse fondamentali per abilitare un certo tipo di controllo degli accessi ai pod, verranno eliminate. Le attuali versioni di Kubernetes le prevedono ancora, ma il supporto terminerà con la versione 1.25. Se si utilizzano ancora le pod security policies quando si aggiorna alla versione 1.25, uno strumento KSPM potrebbe avvisare del fatto che Kubernetes sta ignorando le policy configurate e che è quindi necessario sostituirle con strumenti come i contesti di protezione di Kubernetes o controller di ammissione personalizzati.

Convalida delle configurazioni di terze parti

Kubernetes è un ecosistema in cui i team prendono in prestito o importano costantemente risorse dall’upstream. È ad esempio possibile scaricare immagini dei container da un registro Docker Hub pubblico, oppure applicare un file di distribuzione trovato su GitHub. Non è necessariamente detto che gli sviluppatori terzi che hanno creato tali risorse abbiano seguito le stesse convenzioni di sicurezza dei nostri team.

La gestione KSPM offre pertanto la possibilità di scansionare le risorse di terze parti alla ricerca di eventuali problemi per la sicurezza. Inoltre, consente di trarre vantaggio da tutte le molteplici risorse offerte dalla community di Kubernetes nella gestione dei rischi per la sicurezza.

Applicazione della conformità di Kubernetes

Poiché gli strumenti KSPM utilizzano i motori di policy per valutare le configurazioni e individuare i rischi, si prestano bene a scenari nei quali le aziende devono rispettare requisiti di conformità specifici.

Per esempio, scrivendo policy che garantiscono che tutti i dati gestiti da Kubernetes o a cui Kubernetes ha accesso vengano archiviati in modo conforme all’HIPAA o al GDPR, le aziende possono automatizzare la gestione della conformità nei propri cluster Kubernetes.

Come funziona la gestione del profilo di sicurezza di Kubernetes?

Sebbene strumenti diversi possano adottare un approccio piuttosto diverso alla KSPM, i suoi workflow possono essere suddivisi in alcuni passaggi fondamentali.

Definire le regole di sicurezza

Tipicamente, gli strumenti KSPM sono governati da policy che definiscono i rischi per la sicurezza e la conformità. Molti di essi sono dotati di un set di policy incorporato e consentono agli amministratori di definire policy personalizzate.

Scansione delle configurazioni

Utilizzando regole di sicurezza e conformità, gli strumenti KSPM scansionano automaticamente un ambiente Kubernetes. In ciascuna risorsa che valutano, cercano configurazioni che violino le regole predefinite.

Idealmente, la scansione delle configurazioni avviene continuamente, in modo tale da individuare i rischi in tempo reale tutte le volte in cui viene introdotta una nuova configurazione o si effettua un aggiornamento.

Rilevare, valutare e avvisare

Quando viene rilevata una violazione delle policy, gli strumenti KSPM possono di solito valutarne il livello di gravità, quindi generano un avviso o una notifica se tale livello merita attenzione immediata e in tempo reale. I problemi di minore entità possono semplicemente essere inseriti in un registro che il team potrà esaminare in un secondo momento.

Correggere

Dopo aver ricevuto una notifica di violazione di una policy di sicurezza o conformità, i tecnici analizzano e correggono il problema. In alcuni casi, potrebbe essere possibile utilizzare strumenti KSPM avanzati per correggerli automaticamente, ad esempio modificando un file RBAC problematico per migliorare la sicurezza.

KSPM vs. CSPM

La relazione tra la gestione del profilo di sicurezza di Kubernetes e la gestione del profilo di sicurezza del cloud è soggettiva. Si potrebbe affermare che la gestione KSPM sia uno dei componenti della gestione CSPM, dato che gli ambienti Kubernetes girano spesso sul cloud.

Oppure, si potrebbe considerare la gestione KSPM come appartenente a un dominio diverso, poiché Kubernetes non deve necessariamente essere eseguito nel cloud (potrebbe essere utilizzato on-premise) e i tipi di risorse e configurazioni che la KSPM convalida (ad esempio le policy RBAC) sono diversi dalle risorse che la CSPM può proteggere (ad esempio le policy IAM e le configurazioni di rete del cloud).

Indipendentemente da come la si voglia pensare, è importante capire che la gestione KSPM si occupa di valutare i rischi per la sicurezza e la conformità specifici di Kubernetes, mentre la gestione CSPM aiuta a gestire i rischi in altri tipi di ambienti cloud nativi. Se si utilizza Kubernetes, è necessario dotarsi di uno strumento che offra funzionalità KSPM specifiche.

Sfruttare al meglio la gestione KSPM

Per quanto l’adozione di uno strumento KSPM per il monitoraggio di un ambiente Kubenetes sia il primo passo da compiere per mitigare i rischi per la sicurezza e la conformità, i team dovrebbero seguire le migliori prassi per sfruttare al meglio la gestione KSPM.

Scansione continua

Come già menzionato, la scansione delle configurazioni dovrebbe avvenire in modo continuo. Gli ambienti Kubernetes tendono a cambiare costantemente quando vengono redistribuiti container, vengono aggiunti o modificati namespace, vengono creati o rimossi utenti e servizi e così via.

Effettuare scansioni continue garantisce il rilevamento dei problemi per la sicurezza non appena si presentano. E questo è molto meglio che effettuare un’unica scansione periodica.

Regole aggiornate

I rischi per la sicurezza e la conformità di Kubernetes evolvono continuamente. Così come le stesse configurazioni di Kubernetes. Se gli strumenti KSPM in uso si appoggiano a regole elaborate per una versione precedente di Kubernetes o non più aggiornate, potrebbero non essere in grado di rilevare i tipi di rischi più recenti.

Bisogna pertanto evitare questo problema aggiornando continuamente le regole al cambiare delle minacce che incombono su Kubernetes.

Categorizzazione dei rischi

Non tutti i rischi per la conformità di Kubernetes sono ugualmente gravi. Un container autorizzato ad eseguire la modalità privilegiata potrebbe porre un rischio maggiore rispetto a un utente a cui è stata erroneamente assegnata la possibilità di elencare i pod.

Per aiutare i team a individuare e a rispondere prima ai rischi più seri, è necessario utilizzare strumenti KSPM e policy che non sono solo in grado di rilevare i rischi ma anche di categorizzarli in base al livello di gravità.

Non è solo questione di KSPM

La gestione KSPM è uno dei componenti di una strategia di sicurezza Kubernetes, ma non è decisamente l’unico. Non sostituisce la sicurezza di runtime, che aiuta a rilevare le minacce attive in un ambiente. Non si occupa di rischi quali il malware nei container, una minaccia gestita invece dalla scansione delle immagini dei container.

Il punto è che per lavorare con Kubernetes è necessario adottare una vasta gamma di strumenti di sicurezza.

Come parte di una più ampia strategia di sicurezza Kubernetes, la gestione KSPM consente ai team di convalidare la sicurezza delle configurazioni di Kubernetes allo scopo di rilevare e correggere gli errori che potrebbero causare una violazione. Effettuando scansioni continue e automatiche delle configurazioni di Kubernetes, gli amministratori possono mitigare uno dei principali vettori di attacco, ovvero l’errore umano, automatizzando al contempo la conformità anche nel più complesso dei cluster Kubernetes.