
La semplicità dell’approccio container genera delle importanti e complesse problematiche per quanto concerne il tema sicurezza.
Un mondo dinamico in continua evoluzione
L’approccio a container è molto più dinamico rispetto al classico approccio basato sulla virtualizzazione dell’hardware. È facilissimo effettuare il deploy di nuovi container e spesso si perde la visibilità di tutto quello che è presente. È importante avere il pieno controllo di tutti i container presenti nella propria infrastruttura!
Semplice non significa sicuro
La logica container spinge ad utilizzare immagini già costruite. Docker hub mette a disposizione moltissime immagini per diversi servizi, ma sono sicure? È importante individuare vulnerabilità delle immagini master, ma anche degli applicativi presenti nei propri container.
Grazie a Qualys e al suo modulo Container Security è semplice ottenere visibilità di tutti i propri container e individuarne le vulnerabilità presenti. Grazie all’installazione di un Container Sensor sul nostro ambiente Kubernetes siamo riusciti a non trascurare l’aspetto security, nemmeno nel nostro moderno ambiente container di sviluppo.
1. Installazione del sensore
L’installazione del sensore su ambiente Kubernetes è molto semplice. Qualys mette a disposizione sia l’immagine docker su docker hub, sia la configurazione del DaemonSet. Il download del file YAML è disponibile nel seguente repository:
https://github.com/Qualys/cs_sensor/blob/master/cssensor-ds.yml
Il file è già pronto per essere utilizzato. Le uniche modifiche necessarie sono il valore del proprio Activation ID, del proprio Customer ID e del POD Url (l’indirizzo che il pod deve contattare per comunicare con il portale cloud di Qualys).
1. env: 2. - name: ACTIVATIONID 3. value: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX 4. - name: CUSTOMERID 5. value: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX 6. - name: POD_URL 7. value: https://cmsqagpublic.qg2.apps.qualys.com/ContainerSensor
L’Activation ID e il Customer ID sono disponibili all’interno della propria istanza Qualys, mentre il POD Url è dipendente dalla Qualys Platform. Nel nostro caso l’url utilizzato è: https://cmsqagpublic.qg2.apps.qualys.com/ContainerSensor
Una volta cambiate queste configurazioni sarà sufficiente applicare il DaemonSet con il seguente comando:
kubectl apply -f cssensor-ds.yml
Sarà possibile controllare lo stato del pods tramite il comando get pods per il namespace kube-system.
kubectl -n kube-system get pods
Essendo un daemon set verranno istanziati in autonomia un sensore per ciascun nodo worker
I sensori appariranno immediatamente anche nella Cloud Platform Qualys. Qualora i sensori non dovessero apparire, verificate di aver impostato il POD_URL corretto.
2. Ottieni visibilità
Grazie al Container Security Sensor sarà possibile monitorare il numero e lo stato dei container deployati nella propria infrastruttura Kubernetes, ma soprattutto sarà possibile identificare eventuali container e immagini vulnerabili.
Ottieni visibilità su tutti i container che sono presenti nella tua infrastruttura!
Identifica le informazioni di ciascun container e le vulnerabilità associate.
Controlla quale software è presente nel container o nella immagine che stai utilizzando e se questo è aggiornato o presenta vulnerabilità.
Identifica le vulnerabilità e analizzale per individuare il miglior modo per rimediarle!
Abbiamo messo le basi per monitorare i nostri container e le vulnerabilità associate. Nel prossimo appuntamento andremo più a fondo, cercando di capire come analizzare le nostre immagini in fase di Continuous Integration e Deployment, integrando il modulo di Container Security di Qualys con Gitlab.