PAGES
← all tools
◆ Container & Image Security

kube-bench

v0.16.0 (2026-08-05) open-source

Checks whether Kubernetes is deployed securely by running CIS KubernetesCIS KubernetesHardening benchmarks published by the Center for Internet Security for Kubernetes clusters, giving cyber tools a concrete, versioned checklist of configuration checks to run and report against. Benchmark tests configured via YAML files.

Summary

kube-bench is an open-source command-line tool, licensed under Apache 2.0, that audits a Kubernetes cluster against the CISCISA nonprofit that publishes consensus-based configuration benchmarks and controls for hardening operating systems, cloud environments, and software; cyber tools use it as a ready-made compliance baseline. Kubernetes Benchmark by running YAML-configured checks against the actual node and control-plane configuration. It's typically run as a pod with access to the host's PID namespace and config directories, or invoked directly on a node, which makes it a fit for platform engineers and compliance owners verifying hardening rather than developers reviewing manifests pre-deployment. It supports benchmark profiles for EKSEKSAmazon's managed Kubernetes service, run by AWS, that handles control-plane provisioning so teams can deploy containerized workloads without operating the underlying cluster infrastructure themselves., GKEGKEGoogle Kubernetes Engine, Google's managed Kubernetes service, which lets cyber tools run containerized workloads without managing the underlying cluster infrastructure., AKSAKSAzure Kubernetes Service, Microsoft's managed Kubernetes offering, which lets cyber tools offload cluster provisioning and scaling to Azure so engineers focus on workload logic instead of control-plane operations., OpenShift, RKE2 and k3s, though on managed clusters it can only check worker nodes since master nodes aren't accessible. The README notes that the same CIS scanning is also built into Trivy and the Trivy Operator for in-cluster use. Started in 2017 and maintained by Aqua Security, it has 187 contributors and a release 81 days ago, showing active upkeep.

Checks whether Kubernetes is deployed securely by running CIS Kubernetes Benchmark tests configured via YAML files.

How kube-bench helps

Is my cluster's control-plane configuration actually compliant with the CIS Kubernetes Benchmark, or just assumed to be?

it runs the YAML-defined CIS checks against the live configuration files, arguments and file permissions on each node and reports each test as pass, fail or warn against the benchmark's own numbering

Which specific hardening settings are missing on my nodes, and what does the benchmark say to do about them?

each failed check is reported individually with the CIS test number and description, so a practitioner gets a line-by-line list of what's misconfigured rather than a single pass/fail verdict

Is my managed Kubernetes service (EKS, GKE, AKS) configured the way that provider's own hardening guide expects?

it loads the matching cloud-specific benchmark profile and runs those checks against the node, though only the worker nodes are reachable since the provider controls the master

Does my cluster meet the hardening bar for the specific Kubernetes distribution I'm running, like RKE2, k3s or OpenShift?

it selects the YAML check set built for that distribution's own CIS profile and scores the node against that profile rather than a generic Kubernetes baseline

Has upgrading Kubernetes versions changed which CIS controls apply to my cluster?

separate benchmark profiles map to different Kubernetes and CIS release ranges, so pointing it at the right profile answers whether the older checks still apply or a newer set is now required

all 8 features, with the evidence for each →

Languages

Not documented

Features

8 capabilities · 2 backed by code, an API document or a real run

Built from kube-bench's releases, docs, README and our own runs. “Seen” marks the month we first spotted a release the vendor didn't date. Group names and tags are our labels.

Compare with peers →

What kube-bench offers you

  • Command-line interface4
  • JSON data export2
  • Kubernetes-native deployment1
All capabilities 8 capabilities
CIS Kubernetes benchmark scanning verified Runs CIS Kubernetes benchmark checks against cluster nodes, with support for targeting specific node roles and selecting a specific benchmark version. 46 releases · 10 other sources · first seen Apr 2018

release 46 total

  • new Adds rke2-cis-1.9 CIS benchmark support for RKE2 clusters v0.16.0 · Aug 2026 · source · release history
  • Adds rh-cis-1.9 benchmark configuration for Red Hat OpenShift Container Platform 1.9 v0.16.0 (2026-08-05) · Aug 2026 · source · release history
  • new Adds rh-1.9 CIS benchmark support (Red Hat OpenShift 1.9) v0.16.0 · Aug 2026 · source · release history
  • Adds GKE 1.9 benchmark checks for auditing Google Kubernetes Engine clusters against the gke-1.9 profile. v0.15.5 · May 2026 · source · release history
  • Adds k3s-cis-1.9 CIS benchmark checks for auditing k3s clusters against the CIS 1.9 profile. v0.15.5 · May 2026 · source · release history
  • Adds CIS-1.12 benchmark support for Kubernetes clusters. v0.15.0 · Feb 2026 · source · release history

command line

example 9 total

  • Run RKE2-CIS-1.8 benchmark checks against an RKE2 cluster to assess compliance with the new profile. kube-bench --benchmark rke2-cis-1.8 v0.14.0 · Nov 2025 · source
  • Scan an RKE2 cluster against the latest CIS benchmark profile. kube-bench run --targets=rke2-cis-1.8 v0.14.0 (2025-11-05) · Nov 2025 · source
  • Scan an EKS cluster against the newly supported CIS v1.6 benchmark kube-bench run --targets=master,node --version=eks-1.0 v0.4.0 · Oct 2020 · source
  • Scan a standard Kubernetes 1.18 cluster using the updated mapping kube-bench run --targets=node --version=k8s-1.18 v0.4.0 · Oct 2020 · source
  • Generate a concise report containing only the raw findings without remediation steps or summary tables. kube-bench --noremediations --nosummary --noresults v0.0.15 · May 2018 · source
  • Limit the time spent waiting for Kubernetes API responses during benchmarking. kube-bench --request-timeout=30s v0.0.15 · May 2018 · source
Flexible output formatting shipped Allows filtering the benchmark report output by excluding remediation steps, summary tables, or results, and supports JSON output with actual result details. 5 releases · 2 other sources · first seen May 2018

Also counts toward: Command-line interface, JSON data export

release

  • Adds --bitmask flag to allow filtering checks using bitwise operations v0.3.0 · Apr 2020 · source · release history
  • Adds --format=junit option to output results in JUnit XML format v0.2.0 · Nov 2019 · source · release history
  • Saves the executed audit command under the audit key in JSON output for failed tests. v0.0.29 · Jun 2019 · source · release history
  • --json output now includes the actual_result field alongside the standard CIS benchmark results v0.0.21 · Oct 2018 · source · release history
  • Add --noremediations, --nosummary, and --noresults flags to filter output sections v0.0.15 · May 2018 · source · release history

example

  • Generate JUnit XML reports for CI/CD pipeline integration kube-bench --format=junit v0.2.0 · Nov 2019 · source
  • Run a scan and save the JSON report to report.json for automated processing. kube-bench --outputfile=report.json run master v0.0.29 · Jun 2019 · source
CLI configuration and diagnostics verified Provides command-line options including version reporting and verbose module-level logging controls. 2 releases · 2 other sources · first seen Apr 2018

Also counts toward: Command-line interface

release

  • Adds --version subcommand to print the kube-bench version. v0.0.29 · Jun 2019 · source · release history
  • Removes the hard requirement for kubectl to be installed by allowing version information to be gleaned directly from kubelet. v0.0.12 · Apr 2018 · source · release history

command line

Configuration path customization shipped Allows overriding the default directory used for loading configuration files. 2 releases · first seen May 2018

Also counts toward: Command-line interface

release

  • Supports config files with .yml extension in addition to .yaml v0.3.0 · Apr 2020 · source · release history
  • Add --config-dir flag to override the default configuration directory path v0.0.15 · May 2018 · source · release history
Kubernetes Job support shipped Provides a Kubernetes Job manifest for running the cyber tool on Azure Kubernetes Service (AKS). 1 release · first seen Jan 2021

Also counts toward: Kubernetes-native deployment

release

  • Adds Kubernetes Job for running on Azure Kubernetes Service (AKS) v0.5.0 · Jan 2021 · source · release history
Configuration method support shipped Allows the cyber tool to accept configuration via JSON files or executable parameters. 1 release · first seen Nov 2019

release

  • Adds support for configuration by JSON or executable parameters v0.1.0 · Nov 2019 · source · release history
JSON output file writing shipped Allows writing benchmark results directly to a specified file path in JSON format. 1 release · first seen Jun 2019

Also counts toward: JSON data export

release

  • Adds --outputfile flag to write JSON results directly to a specified file path. v0.0.29 · Jun 2019 · source · release history
API client timeout control shipped Allows specifying the timeout duration for Kubernetes API requests during benchmarking. 1 release · first seen May 2018

Also counts toward: Command-line interface

release

  • Add --request-timeout flag to specify Kubernetes API client timeout duration v0.0.15 · May 2018 · source · release history

Lines in monospace are the tool's own words: help text parsed from its source, or an endpoint from its API document. Under release, a line is our summary of a dated release. Under docs, it is quoted from the tool's own documentation or website. Each links back to the source it came from.

Score card

  1. Shipping velocity releases a month, last 12 months
  2. Documentation quality release-notes rubric, 0–100
  3. Breaking-change discipline how rarely a release breaks users, and notice given
  4. Maintenance risk quiet time against its own cadence, maintainers
  5. Innovation & surface new capabilities, API and MCP surface
  6. Community health
  7. Contributor trend distinct committers, this year against last
  8. Maintainer concentration bus factor now against a year ago
  9. Issue backlog trend issues closed per issue opened, 12 months
  10. Responsiveness median time to a maintainer’s first reply

Nine scores for kube-bench, each built from the releases, notes and API history this site tracks — and, on Researcher and Business, where it stands among every measured tool in its category and how that has moved.

Score cards are part of every paid plan.

See plans →

Each score is 0–100 on a published rubric, derived from data this site already shows. A dimension we cannot measure says so — it is never scored 0 and never enters a rank.

How this is scored
  • Shipping velocity — releases a month over the last 12 months, on a log scale where 16 a month scores 100. Needs 3 releases in the window.
  • Documentation quality — the release-notes rubric published on the analytics page, unchanged.
  • Breaking-change discipline — the share of releases carrying a breaking change (none scores 100, half or more scores 0). Only projects that label breaking changes are measured: a clean record cannot be told from an unlabelled one.
  • Maintenance risk — quiet time measured against the tool's own release cadence (quiet longer than 90 days and three typical gaps scores 0), plus the number of active maintainers and whether contributors are growing, where known. Higher is lower risk.
  • Innovation & surface — new capabilities in the feature ledger this year, API and MCP operations added, and the share of commits that are features: the mean of whichever we hold.
  • Community health (open-source tools only) — each is a direction, not a size: contributors this year against last, the bus factor now against a year ago, and issues closed per issue opened, where steady scores 50, doubled 100 and halved 0; plus the median time to a maintainer's first reply (an hour scores about 100, a month or more 0). A commercial card has no repository and carries none of the four.
  • Documented delivery (commercial tools) — when a vendor's documented new capabilities have slowed against its own baseline, that counts against the overall standing as heavily as two low dimensions. Steady delivery, or too little history to judge, leaves the standing alone; it is never a sixth score.
  • Open-source tools are scored on repository signals; commercial tools on their published changelog. Ranks compare tools within one category and one profile and need at least five measured peers; the overall standing needs three ranked dimensions. Best-in-breed or consolidator is a shape, not a quality, and is never scored.

Release-note detail over time

See how much detail kube-bench puts in its release notes, quarter by quarter, and compare it with tracked tools in the same category. This history uses up to ten retained, reviewed notes per tool; sparse or blank older quarters may reflect that limit.

Checking release-note history…

Explore the full chart →

Website history

trivy.dev, every change

Aqua Security's home page and 3 more pages as they looked each month from December 2021 to October 2026: 19 renders, 6 changes of tagline or palette. Step through them, play them, or put any two months side by side.

Website history is included with Researcher and Business.

See plans →

Releases

Show

31 entries

  1. August 20262
  2. May 20261
  3. February 20261
  4. November 20252
  5. September 20251
  6. August 20251
  7. June 20251
  8. January 20251
  9. October 20241
  10. December 20231
  11. June 20231
  12. February 20231
  13. October 20221
  14. August 20221
  15. April 20222
  16. January 20221
  17. January 20211
  18. October 20201
  19. April 20201
  20. January 20201
  21. November 20192
  22. June 20191
  23. April 20191
  24. March 20191
  25. October 20181
  26. May 20181
  27. April 20181
    Show

    31 entries

    Project health

    Issue, contributor and maintainer activity in aquasecurity/kube-bench, 2023-10 – 2026-09, as of 2026-09-25. Twelve-month figures first; the trend lines run the whole window.

    1. Contributors 7 −16 vs prior 12 months
    2. Maintainers 2 +0 joined · −2 left, last 12 months
    3. Bus factor 1 committers behind half the commits
    4. Community-filed 73% of issues opened, last 12 months
    5. Median time to close 8.3 days first maintainer reply 23 days
    6. Open backlog 69 of 515 issues ever filed
    1. Issues opened / month 1 · 3 communitymaintainers
    2. Open backlog 69
    3. Contributors / month 1
    4. Commits / month 1
    5. Stars 8,187
    Issue themes, last 12 months
    • other 100%

    Counts from the project's public repository and git history; no individuals are identified. Maintainers are the committers covering 80% of the last year's commits. how we measure this

    Libraries its release ships

    What its latest release locks, checked against known advisories.

    None of its release's images build from a lockfile we can read.

    Add the badge to your README

    Maintain this project? The badge links readers straight to this page, so they can follow every release here.

    Tracked by Cyber Toolchain Choose a badge style and copy the code →
    browse all tools → score card for your toolchain →