The Kubernetes Bench for Security is a Go application that checks whether Kubernetes is deployed according to security best practices.
Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.
 
 
 
 
Přejít na soubor
dependabot[bot] b4286f06ed
build(deps): bump golang from 1.22.1 to 1.22.2
před 1 dnem
.github build(deps): bump golangci/golangci-lint-action from 3 to 4 (#1568) před 2 měsíci
cfg Currently, certain commands involve retrieving all node names or pods and then executing additional commands in a loop, resulting in a time complexity linearly proportional to the number of nodes. (#1597) před 1 dnem
check chore: remove refs to deprecated io/ioutil (#1504) před 5 měsíci
cmd chore: remove refs to deprecated io/ioutil (#1504) před 5 měsíci
docs support CIS Kubernetes Benchmark v1.8.0 (#1527) před 5 měsíci
hack Adding eks-stig-kubernetes-v1r6 (#1266) před 2 roky
hooks adds kube-bench version to docker build hook (#524) před 4 roky
integration/testdata fix wrong use of flag in test_items found in 4.13 and 4.14 (#1528) před 5 měsíci
internal/findings Migrate to aws-sdk-go-v2 (#1268) před 2 roky
.gitignore release: prepare v0.6.7-rc1 (#1136) před 2 roky
.golangci.yaml chore(lint): setup golangci-lint (#1144) před 2 roky
.goreleaser.yml add darwin builds (#1428) před 1 rokem
.yamllint.yaml Support Linting YAML as part of Travis CI build (#554) před 4 roky
CONTRIBUTING.md Adding eks-stig-kubernetes-v1r6 (#1266) před 2 roky
Dockerfile build(deps): bump golang from 1.22.1 to 1.22.2 před 1 dnem
Dockerfile.fips.ubi build(deps): bump golang from 1.22.1 to 1.22.2 před 1 dnem
Dockerfile.ubi build(deps): bump golang from 1.22.1 to 1.22.2 před 1 dnem
LICENSE Initial commit před 7 roky
NOTICE Create NOTICE (#199) před 5 roky
OWNERS Create OWNERS před 7 roky
README.md updates to the readme před 7 měsíci
codecov.yml Improve Proxykubeconfig tests (#708) před 4 roky
entrypoint.sh Set -e to fail fast před 6 roky
fipsonly.go chore: add fips compliant images (#1473) před 9 měsíci
go.mod build(deps): bump k8s.io/client-go from 0.29.1 to 0.29.3 (#1587) před 1 dnem
go.sum build(deps): bump k8s.io/client-go from 0.29.1 to 0.29.3 (#1587) před 1 dnem
job-ack.yaml fix: fully qualified image names (#1206) před 2 roky
job-aks.yaml fix: fully qualified image names (#1206) před 2 roky
job-eks-asff.yaml support CIS Amazon Elastic Kubernetes Service (EKS) Benchmark v1.2.0 (#1449) před 11 měsíci
job-eks-stig.yaml Adding eks-stig-kubernetes-v1r6 (#1266) před 2 roky
job-eks.yaml support CIS Amazon Elastic Kubernetes Service (EKS) Benchmark v1.2.0 (#1449) před 11 měsíci
job-gke.yaml fix: fully qualified image names (#1206) před 2 roky
job-iks.yaml fix: fully qualified image names (#1206) před 2 roky
job-master.yaml job.yaml: Adding /var/lib/cni mounts for proper CIS 1.1.9 and 1.1.0 checking (#1547) před 2 měsíci
job-node.yaml job.yaml: Adding /var/lib/cni mounts for proper CIS 1.1.9 and 1.1.0 checking (#1547) před 2 měsíci
job-tkgi.yaml add support VMware Tanzu(TKGI) Benchmarks v1.2.53 (#1452) před 11 měsíci
job.yaml release: prepare-v0.7.3 (#1599) před 1 dnem
main.go Fix issue #16 about supporting verbosity. před 7 roky
makefile chore: add fips compliant images (#1473) před 9 měsíci
mkdocs.yml Fixing typos (#899) před 3 roky

README.md

GitHub Release Downloads Docker Pulls Go Report Card Build Status License Coverage Status

kube-bench logo

kube-bench is a tool that checks whether Kubernetes is deployed securely by running the checks documented in the CIS Kubernetes Benchmark.

Tests are configured with YAML files, making this tool easy to update as test specifications evolve.

Kubernetes Bench for Security

CIS Scanning as part of Trivy and the Trivy Operator

Trivy, the all in one cloud native security scanner, can be deployed as a Kubernetes Operator inside a cluster. Both, the Trivy CLI, and the Trivy Operator support CIS Kubernetes Benchmark scanning among several other features.

Quick start

There are multiple ways to run kube-bench. You can run kube-bench inside a pod, but it will need access to the host's PID namespace in order to check the running processes, as well as access to some directories on the host where config files and other files are stored.

The supplied job.yaml file can be applied to run the tests as a job. For example:

$ kubectl apply -f job.yaml
job.batch/kube-bench created

$ kubectl get pods
NAME                      READY   STATUS              RESTARTS   AGE
kube-bench-j76s9   0/1     ContainerCreating   0          3s

# Wait for a few seconds for the job to complete
$ kubectl get pods
NAME                      READY   STATUS      RESTARTS   AGE
kube-bench-j76s9   0/1     Completed   0          11s

# The results are held in the pod's logs
kubectl logs kube-bench-j76s9
[INFO] 1 Master Node Security Configuration
[INFO] 1.1 API Server
...

For more information and different ways to run kube-bench see documentation

Please Note

  1. kube-bench implements the CIS Kubernetes Benchmark as closely as possible. Please raise issues here if kube-bench is not correctly implementing the test as described in the Benchmark. To report issues in the Benchmark itself (for example, tests that you believe are inappropriate), please join the CIS community.

  2. There is not a one-to-one mapping between releases of Kubernetes and releases of the CIS benchmark. See CIS Kubernetes Benchmark support to see which releases of Kubernetes are covered by different releases of the benchmark.

By default, kube-bench will determine the test set to run based on the Kubernetes version running on the machine.

Contributing

Kindly read Contributing before contributing. We welcome PRs and issue reports.

Roadmap

Going forward we plan to release updates to kube-bench to add support for new releases of the CIS Benchmark. Note that these are not released as frequently as Kubernetes releases.