
Verifica se Kubernetes è distribuito secondo le migliori pratiche di sicurezza definite nel CIS Kubernetes Benchmark.
kube-bench è uno strumento che verifica se Kubernetes è distribuito in modo sicuro eseguendo i controlli documentati nel CIS Kubernetes Benchmark.
I test sono configurati con file YAML, rendendo questo strumento facile da aggiornare man mano che le specifiche dei test evolvono.

Trivy, lo scanner di sicurezza cloud native tutto in uno, può essere distribuito come Operatore Kubernetes all'interno di un cluster. Sia Trivy CLI che Trivy Operator supportano la scansione CIS Kubernetes Benchmark tra molte altre funzionalità.
Ci sono diversi modi per eseguire kube-bench. Puoi eseguire kube-bench all'interno di un pod, ma avrà bisogno di accesso al namespace PID dell'host per poter controllare i processi in esecuzione, oltre all'accesso ad alcune directory sull'host dove sono archiviati file di configurazione e altri file.
Il file job.yaml fornito può essere applicato per eseguire i test come job. Ad esempio:
$ kubectl apply -f job.yaml
job.batch/kube-bench creato
$ kubectl get pods
NAME READY STATUS RESTARTS AGE
kube-bench-j76s9 0/1 ContainerCreating 0 3s
# Attendere qualche secondo che il job completi
$ kubectl get pods
NAME READY STATUS RESTARTS AGE
kube-bench-j76s9 0/1 Completed 0 11s
# I risultati sono contenuti nei log del pod
kubectl logs kube-bench-j76s9
[INFO] 1 Master Node Security Configuration
[INFO] 1.1 API Server
...
Per maggiori informazioni e diversi modi di eseguire kube-bench consulta la documentazione
kube-bench implementa il CIS Kubernetes Benchmark il più fedelmente possibile. Per favore segnala qui eventuali problemi se kube-bench non implementa correttamente il test come descritto nel Benchmark. Per segnalare problemi nel Benchmark stesso (ad esempio, test che ritieni inappropriati), unisciti alla comunità CIS.
Non c'è una corrispondenza uno-a-uno tra le versioni di Kubernetes e le versioni del benchmark CIS. Consulta Supporto CIS Kubernetes Benchmark per vedere quali versioni di Kubernetes sono coperte dalle diverse versioni del benchmark.
Per impostazione predefinita, kube-bench determinerà il set di test da eseguire in base alla versione di Kubernetes in esecuzione sulla macchina.
Leggi gentilmente Contribuire prima di contribuire. Accogliamo con favore PR e segnalazioni di problemi.
In futuro prevediamo di pubblicare aggiornamenti a kube-bench per aggiungere supporto per nuove versioni del CIS Benchmark. Tieni presente che questi non vengono rilasciati con la stessa frequenza delle versioni di Kubernetes.