kube-bench
Check Kubernetes against CIS benchmarks
Changes since last week
no change.
Known vulnerabilities (8)
Vulnerabilities are known advisories that Grype matches against the dependencies declared in each project's release source (manifests and lockfiles, including development and build dependencies). A match does not mean the tool is exploitable: the vulnerable code may be unused, test-only, or not shipped in the released binary. OSV: also reported by OSV-Scanner. Released binary: for Go tools, whether govulncheck found the vulnerable code in the shipped Linux binary. KEV: listed in the CISA Known Exploited Vulnerabilities catalog. EPSS: FIRST's estimated probability of exploitation in the next 30 days. Both describe the vulnerability in general, not its exploitability through this tool; a match in a workflow file refers to a GitHub Action, not to shipped code. Select an advisory for every catalog tool it matches. If a match is wrong or does not apply, use Dispute; accepted disputes are annotated here and listed on the corrections page, and the match stays visible.
| Severity | Advisory | Package | Version | Fixed in | OSV | Released binary | KEV | EPSS | Declared in | Dispute |
|---|---|---|---|---|---|---|---|---|---|---|
| Critical | GO-2026-6612 sourceCVE-2026-78663 | golang.org/x/netgolang | v0.56.0 | 0.60.0 | ✓ | vulnerable code in binary | no | 0.6% | go.mod | Dispute |
| High | GO-2026-6603 sourceCVE-2026-78659 | golang.org/x/netgolang | v0.56.0 | 0.60.0 | ✓ | vulnerable code in binary | no | 0.6% | go.mod | Dispute |
| High | GO-2026-6610 sourceCVE-2026-78660 | golang.org/x/netgolang | v0.56.0 | 0.60.0 | ✓ | vulnerable code in binary | no | 0.4% | go.mod | Dispute |
| High | GO-2026-6611 sourceCVE-2026-78669 | golang.org/x/netgolang | v0.56.0 | 0.60.0 | ✓ | vulnerable code in binary | no | 0.6% | go.mod | Dispute |
| High | GO-2026-6617 sourceCVE-2026-97032 | golang.org/x/netgolang | v0.56.0 | 0.60.0 | ✓ | vulnerable code in binary | no | 0.5% | go.mod | Dispute |
| High | GO-2026-6629 sourceCVE-2026-56851 | golang.org/x/textgolang | v0.39.0 | 0.41.0 | ✓ | vulnerable code in binary | no | 0.5% | go.mod | Dispute |
| Unknown | GO-2026-6860 sourceCVE-2026-78661 | golang.org/x/netgolang | v0.56.0 | 0.62.0 | ✓ | vulnerable code in binary | no | 0.2% | go.mod | Dispute |
| Unknown | GO-2026-6866 sourceCVE-2026-97045 | golang.org/x/netgolang | v0.56.0 | 0.62.0 | ✓ | vulnerable code in binary | no | 0.2% | go.mod | Dispute |
Second opinion: OSV-Scanner
OSV-Scanner found 8 advisories in the same files; 8 of Grype's matches are confirmed by it (marked ✓ above). 0 advisories were reported only by OSV-Scanner.
Vulnerable code in the released binary
govulncheck analyzed kube-bench from kube-bench_0.16.0_linux_amd64.tar.gz, built with go1.26.3. 29 advisories have vulnerable functions compiled into it: 26 in the Go standard library and 3 in dependencies.
Of the 8 Go advisories Grype matched in the source, 0 are in modules or code paths that are not in the shipped binary.
The Go linker removes unreachable functions, so a vulnerable function in the binary is likely reachable. Standard-library advisories are fixed by rebuilding with a newer Go release.
| Advisory | Module | Version | Fixed in | Summary |
|---|---|---|---|---|
GO-2026-4970CVE-2026-39822 | stdlib | v1.26.3 | v1.26.5 | Root escape via symlink plus trailing slash in os |
GO-2026-5026CVE-2026-39821 | stdlib | v1.26.3 | v1.26.6 | Invoking failure to reject ASCII-only Punycode-encoded labels in golang.org/x/net/idna |
GO-2026-5037CVE-2026-27145 | stdlib | v1.26.3 | v1.26.4 | Inefficient candidate hostname parsing in crypto/x509 |
GO-2026-5038CVE-2026-42504 | stdlib | v1.26.3 | v1.26.4 | Quadratic complexity in WordDecoder.DecodeHeader in mime |
GO-2026-5039CVE-2026-42507 | stdlib | v1.26.3 | v1.26.4 | Arbitrary inputs are included in errors without any escaping in net/textproto |
GO-2026-5856CVE-2026-42505 | stdlib | v1.26.3 | v1.26.5 | Invoking Encrypted Client Hello privacy leak in crypto/tls |
GO-2026-5942CVE-2026-46600 | stdlib | v1.26.3 | v1.26.6 | Parsing an invalid SVCB or HTTPS RR can panic in golang.org/x/net/dns/dnsmessage |
GO-2026-5972CVE-2026-33818 | stdlib | v1.26.3 | v1.26.6 | Enforce maximum recursion depth in encoding/asn1 |
GO-2026-6088CVE-2026-56859 | stdlib | v1.26.3 | v1.26.6 | Add recursion depth guard during decode in encoding/xml |
GO-2026-6089CVE-2026-56853 | stdlib | v1.26.3 | v1.26.6 | Apply ReadHeaderTimeout when doing unencrypted HTTP/2 check in net/http |
GO-2026-6090CVE-2026-56862 | stdlib | v1.26.3 | v1.26.6 | Limit handshake messages we are willing to accept post-handshake in crypto/tls |
GO-2026-6091CVE-2026-56858 | stdlib | v1.26.3 | v1.26.6 | Fix Javascript regexp context tracking in html/template |
GO-2026-6218CVE-2026-56860 | stdlib | v1.26.3 | v1.26.6 | Avoid quadratic complexity in resolvePath in net/url |
GO-2026-6599CVE-2026-94448 | stdlib | v1.26.3 | v1.26.9 | Reset context tracking on consecutive template expressions in html/template |
GO-2026-6600CVE-2026-97030 | stdlib | v1.26.3 | v1.26.9 | Recognize yield as regexp preceder keyword in html/template |
GO-2026-6603CVE-2026-78659 | stdlib | v1.26.3 | v1.26.9 | HTTP/2 server memory exhaustion due to Trailer headers in net/http |
GO-2026-6605CVE-2026-56866 | stdlib | v1.26.3 | v1.26.9 | HTTP/1 client connection desynchronization after CONNECT rejection in net/http |
GO-2026-6607CVE-2026-97031 | stdlib | v1.26.3 | v1.26.9 | Reject malformed ECH outer extension references in crypto/tls |
GO-2026-6608CVE-2026-94440 | stdlib | v1.26.3 | v1.26.9 | Memory limit bypass when parsing MIME headers in net/textproto, mime/multipart |
GO-2026-6609CVE-2026-78667 | stdlib | v1.26.3 | v1.26.9 | Lack of limit on size of parsed Range headers in net/http |
GO-2026-6610CVE-2026-78660 | stdlib | v1.26.3 | v1.26.9 | HTTP/2 transport accepts malformed framing-related headers in net/http |
GO-2026-6611CVE-2026-78669 | stdlib | v1.26.3 | v1.26.9 | Excessive CPU consumption from repeated initial window changes in net/http |
GO-2026-6612CVE-2026-78663 | stdlib | v1.26.3 | v1.26.9 | Double flow control refund on HTTP/2 server streams in net/http |
GO-2026-6613CVE-2026-94439 | stdlib | v1.26.3 | v1.26.9 | HTTP/1 server connection desynchronization after 2xx CONNECT response in net/http |
GO-2026-6617CVE-2026-97032 | stdlib | v1.26.3 | v1.26.9 | HTTP/2 server crash due to HPACK encoder race in net/http |
GO-2026-6809CVE-2026-111943 | stdlib | v1.26.3 | v1.26.10 | Distrust compromised intermediate certificates in crypto/x509 |
GO-2026-6860CVE-2026-78661 | golang.org/x/net | v0.56.0 | v0.62.0 | Avoid quadratic complexity when coalescing text nodes in html in golang.org/x/net |
GO-2026-6866CVE-2026-97045 | golang.org/x/net | v0.56.0 | v0.62.0 | Check all ancestor namespace transitions when rendering raw text in html in golang.org/x/net |
GO-2026-6629CVE-2026-56851 | golang.org/x/text | v0.39.0 | v0.41.0 | Panic parsing crafted input in x/text/secure/precis in golang.org/x/text |
Release integrity
Verdict: checksums only for kube-bench_0.16.0_linux_amd64.tar.gz. The download matches GitHub's recorded digest.
- Checksums file: yes
- Signatures: no
- SLSA provenance: no
- SBOM published with the release: no
Verified means a signature, provenance, or attestation was checked against an identity in aquasecurity/kube-bench's own GitHub Actions workflows.
Repository security (OpenSSF Scorecard)
Score 5.8/10, assessed 2026-11-02 (Scorecard CLI run by this workflow). Scorecard viewer
All checks
| Check | Score | Reason |
|---|---|---|
| CII-Best-Practices | 0 | no effort to earn an OpenSSF best practices badge detected |
| Fuzzing | 0 | project is not fuzzed |
| SAST | 0 | SAST tool is not run on all commits -- score normalized to 0 |
| Security-Policy | 0 | security policy file not detected |
| Signed-Releases | 0 | Project has not signed or included provenance with any releases. |
| Token-Permissions | 0 | detected GitHub workflow tokens with excessive permissions |
| Vulnerabilities | 2 | 8 existing vulnerabilities detected |
| Branch-Protection | 5 | branch protection is not maximal on development and all release branches |
| Pinned-Dependencies | 6 | dependency not pinned by hash detected -- score normalized to 6 |
| Binary-Artifacts | 10 | no binaries found in the repo |
| CI-Tests | 10 | 30 out of 30 merged PRs checked by a CI test -- score normalized to 10 |
| Code-Review | 10 | all changesets reviewed |
| Contributors | 10 | project has 20 contributing companies or organizations |
| Dangerous-Workflow | 10 | no dangerous workflow patterns detected |
| Dependency-Update-Tool | 10 | update tool detected |
| License | 10 | license file detected |
| Maintained | 10 | 12 commit(s) and 4 issue activity found in the last 90 days -- score normalized to 10 |
| Packaging | 10 | packaging workflow detected |
GitHub Actions workflow audit (zizmor)
9 potential issues in 4 workflow files at this release: 1 high, 8 medium, 0 low severity (medium or high confidence only). Each is a pattern to review, not a confirmed vulnerability.
All findings
| Severity | Rule | Location | Note |
|---|---|---|---|
| High | template-injection code injection via template expansion | .github/workflows/mkdocs-deploy.yaml:36 | this step |
| Medium | excessive-permissions overly broad permissions | .github/workflows/build.yml:2 | default permissions used due to no permissions: block |
| Medium | excessive-permissions overly broad permissions | .github/workflows/build.yml:21 | this job |
| Medium | excessive-permissions overly broad permissions | .github/workflows/build.yml:38 | this job |
| Medium | excessive-permissions overly broad permissions | .github/workflows/build.yml:54 | this job |
| Medium | excessive-permissions overly broad permissions | .github/workflows/build.yml:83 | this job |
| Medium | excessive-permissions overly broad permissions | .github/workflows/mkdocs-deploy.yaml:14 | this job |
| Medium | excessive-permissions overly broad permissions | .github/workflows/publish.yml:14 | this job |
| Medium | excessive-permissions overly broad permissions | .github/workflows/release.yml:12 | this job |
Dependencies (101)
By ecosystem: golang 86, github 15.
Licenses (as declared in the SBOM): unknown 101.
golang (86)
| Name | Version | License | Declared in |
|---|---|---|---|
github.com/aws/aws-sdk-go-v2 | v1.43.3 | go.mod | |
github.com/aws/aws-sdk-go-v2/config | v1.32.14 | go.mod | |
github.com/aws/aws-sdk-go-v2/credentials | v1.19.14 | go.mod | |
github.com/aws/aws-sdk-go-v2/feature/ec2/imds | v1.18.21 | go.mod | |
github.com/aws/aws-sdk-go-v2/internal/configsources | v1.4.34 | go.mod | |
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 | v2.7.34 | go.mod | |
github.com/aws/aws-sdk-go-v2/internal/ini | v1.8.6 | go.mod | |
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding | v1.13.7 | go.mod | |
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url | v1.13.21 | go.mod | |
github.com/aws/aws-sdk-go-v2/service/securityhub | v1.75.3 | go.mod | |
github.com/aws/aws-sdk-go-v2/service/signin | v1.0.9 | go.mod | |
github.com/aws/aws-sdk-go-v2/service/sso | v1.30.15 | go.mod | |
github.com/aws/aws-sdk-go-v2/service/ssooidc | v1.35.19 | go.mod | |
github.com/aws/aws-sdk-go-v2/service/sts | v1.41.10 | go.mod | |
github.com/aws/smithy-go | v1.27.6 | go.mod | |
github.com/davecgh/go-spew | v1.1.2-0.20180830191138-d8f796af33cc | go.mod | |
github.com/emicklei/go-restful/v3 | v3.13.0 | go.mod | |
github.com/fatih/color | v1.19.0 | go.mod | |
github.com/fsnotify/fsnotify | v1.9.0 | go.mod | |
github.com/fxamacker/cbor/v2 | v2.9.0 | go.mod | |
github.com/go-logr/logr | v1.4.3 | go.mod | |
github.com/go-openapi/jsonpointer | v0.21.0 | go.mod | |
github.com/go-openapi/jsonreference | v0.20.2 | go.mod | |
github.com/go-openapi/swag | v0.23.0 | go.mod | |
github.com/go-viper/mapstructure/v2 | v2.4.0 | go.mod | |
github.com/golang/glog | v1.2.5 | go.mod | |
github.com/google/gnostic-models | v0.7.0 | go.mod | |
github.com/google/uuid | v1.6.0 | go.mod | |
github.com/inconshreveable/mousetrap | v1.1.0 | go.mod | |
github.com/jackc/pgpassfile | v1.0.0 | go.mod | |
github.com/jackc/pgservicefile | v0.0.0-20240606120523-5a60cdf6a761 | go.mod | |
github.com/jackc/pgx/v5 | v5.9.2 | go.mod | |
github.com/jackc/puddle/v2 | v2.2.2 | go.mod | |
github.com/jinzhu/inflection | v1.0.0 | go.mod | |
github.com/jinzhu/now | v1.1.5 | go.mod | |
github.com/josharian/intern | v1.0.0 | go.mod | |
github.com/json-iterator/go | v1.1.12 | go.mod | |
github.com/magiconair/properties | v1.8.10 | go.mod | |
github.com/mailru/easyjson | v0.7.7 | go.mod | |
github.com/mattn/go-colorable | v0.1.14 | go.mod | |
github.com/mattn/go-isatty | v0.0.20 | go.mod | |
github.com/modern-go/concurrent | v0.0.0-20180306012644-bacd9c7ef1dd | go.mod | |
github.com/modern-go/reflect2 | v1.0.3-0.20250322232337-35a7c28c31ee | go.mod | |
github.com/munnerz/goautoneg | v0.0.0-20191010083416-a7dc8b61c822 | go.mod | |
github.com/onsi/ginkgo | v1.16.5 | go.mod | |
github.com/pelletier/go-toml/v2 | v2.2.4 | go.mod | |
github.com/pkg/errors | v0.9.1 | go.mod | |
github.com/pmezard/go-difflib | v1.0.1-0.20181226105442-5d4384ee4fb2 | go.mod | |
github.com/sagikazarmark/locafero | v0.11.0 | go.mod | |
github.com/sourcegraph/conc | v0.3.1-0.20240121214520-5f936abd7ae8 | go.mod | |
github.com/spf13/afero | v1.15.0 | go.mod | |
github.com/spf13/cast | v1.10.0 | go.mod | |
github.com/spf13/cobra | v1.10.2 | go.mod | |
github.com/spf13/pflag | v1.0.10 | go.mod | |
github.com/spf13/viper | v1.21.0 | go.mod | |
github.com/stretchr/objx | v0.5.2 | go.mod | |
github.com/stretchr/testify | v1.11.1 | go.mod | |
github.com/subosito/gotenv | v1.6.0 | go.mod | |
github.com/x448/float16 | v0.8.4 | go.mod | |
go.yaml.in/yaml/v2 | v2.4.3 | go.mod | |
go.yaml.in/yaml/v3 | v3.0.4 | go.mod | |
golang.org/x/exp | v0.0.0-20250718183923-645b1fa84792 | go.mod | |
golang.org/x/net | v0.56.0 | go.mod | |
golang.org/x/oauth2 | v0.34.0 | go.mod | |
golang.org/x/sync | v0.21.0 | go.mod | |
golang.org/x/sys | v0.46.0 | go.mod | |
golang.org/x/term | v0.44.0 | go.mod | |
golang.org/x/text | v0.39.0 | go.mod | |
golang.org/x/time | v0.14.0 | go.mod | |
google.golang.org/protobuf | v1.36.12-0.20260120151049-f2248ac996af | go.mod | |
gopkg.in/evanphx/json-patch.v4 | v4.13.0 | go.mod | |
gopkg.in/inf.v0 | v0.9.1 | go.mod | |
gopkg.in/yaml.v2 | v2.4.0 | go.mod | |
gopkg.in/yaml.v3 | v3.0.1 | go.mod | |
gorm.io/driver/postgres | v1.6.0 | go.mod | |
gorm.io/gorm | v1.31.1 | go.mod | |
k8s.io/api | v0.36.3 | go.mod | |
k8s.io/apimachinery | v0.36.3 | go.mod | |
k8s.io/client-go | v0.36.3 | go.mod | |
k8s.io/klog/v2 | v2.140.0 | go.mod | |
k8s.io/kube-openapi | v0.0.0-20260317180543-43fb72c5454a | go.mod | |
k8s.io/utils | v0.0.0-20260210185600-b8788abfbbc2 | go.mod | |
sigs.k8s.io/json | v0.0.0-20250730193827-2d320260d730 | go.mod | |
sigs.k8s.io/randfill | v1.0.0 | go.mod | |
sigs.k8s.io/structured-merge-diff/v6 | v6.3.3 | go.mod | |
sigs.k8s.io/yaml | v1.6.0 | go.mod |
github (15)
| Name | Version | License | Declared in |
|---|---|---|---|
actions/cache | v5.0.5 | .github/workflows/publish.yml | |
actions/checkout | v6.0.2 | .github/workflows/build.yml | |
actions/setup-go | v6.3.0 | .github/workflows/build.yml | |
actions/setup-python | v6.2.0 | .github/workflows/mkdocs-deploy.yaml | |
codecov/codecov-action | v5.5.4 | .github/workflows/build.yml | |
crazy-max/ghaction-docker-meta | v5.10.0 | .github/workflows/publish.yml | |
docker/build-push-action | v7.2.0 | .github/workflows/publish.yml | |
docker/login-action | v4.1.0 | .github/workflows/publish.yml | |
docker/setup-buildx-action | v4.0.0 | .github/workflows/publish.yml | |
docker/setup-qemu-action | v4.0.0 | .github/workflows/publish.yml | |
engineerd/setup-kind | ecfad61750951586a9ef973db567df1d28671bdc | .github/workflows/build.yml | |
golangci/golangci-lint-action | v8.0.0 | .github/workflows/build.yml | |
goreleaser/goreleaser-action | v7.2.2 | .github/workflows/build.yml | |
GuillaumeFalourd/diff-action | v1 | .github/workflows/build.yml | |
ibiqlik/action-yamllint | v3.1.1 | .github/workflows/build.yml |
History
| Week | Version | Dependencies | Critical | High | Medium | Low | Unknown | Changes |
|---|---|---|---|---|---|---|---|---|
| 2026-11-02 | v0.16.0 | 101 | 1 | 5 | 0 | 0 | 2 | — |
| 2026-11-01 | v0.16.0 | 101 | 1 | 5 | 0 | 0 | 2 | — |
SBOM minimum elements
Scored by sbomlyze on the generated source SBOM. A source SBOM usually lacks supplier and hash data, so these scores mostly reflect what the project's manifests declare.
| Standard | Score | Checks passed | Failed checks |
|---|---|---|---|
| NTIA 2021 | 71 | 5/7 | Supplier Name, Dependency Relationship |
| CISA 2025 | 50 | 5/10 | Software Producer, Dependency Relationship, License Information, Component Hash, SBOM Author |
| BSI TR-03183 | 44 | 4/9 | Component Creator, Distribution Licences, SHA-512 Hash, Dependency Relationship, SBOM Creator Contact |
Evidence
Downloads for this week: CycloneDX SBOM · Grype report
Permanent copy of the raw SBOM, Grype, OSV-Scanner, and govulncheck output and release checks: release report-2026-11-02, folder supply-chain-shard-*/aquasecurity__kube-bench/.
6 manifests and lockfiles scanned
.github/workflows/build.yml, .github/workflows/mkdocs-deploy.yaml, .github/workflows/publish.yml, .github/workflows/release.yml, go.mod, go.sum
Full JSON for this project · Atom feed of weekly changes
Badges
shields.io endpoints refreshed with each weekly scan. They report this week's result for the latest release, nothing more.
[](https://rezmoss.github.io/awesome-security-pipeline/projects/aquasecurity/kube-bench/index.html)
[](https://rezmoss.github.io/awesome-security-pipeline/projects/aquasecurity/kube-bench/index.html)
How this report is made
Every Sunday a GitHub Actions workflow resolves each catalog tool to its latest release and runs the checks below. Every tool is installed from its own latest release and verified against its published checksum or digest. Nothing from the scanned projects is built or executed; release binaries are analyzed as files.
| Tool | What it does here | Version this week |
|---|---|---|
| Syft | Generates a CycloneDX SBOM from each release's manifests and lockfiles. | 1.55.0 |
| Grype | Matches the SBOM against known vulnerabilities. | 0.121.0 |
| OSV-Scanner | Checks the same files against the OSV database to confirm or add matches. | 2.7.0 |
| govulncheck | For Go tools, finds which advisories have vulnerable code compiled into the released Linux binary. | 1.9.0 |
| zizmor | Audits the project's GitHub Actions workflows for injection, unpinned actions, and excessive permissions. | 1.31.1 |
| OpenSSF Scorecard | Scores repository security practices such as code review, branch protection, and pinned dependencies. | 5.6.0 |
| Cosign | Verifies Sigstore signatures on the release binary or its checksums file. | 3.1.4 |
| slsa-verifier | Verifies SLSA build provenance published with the release. | 2.7.1 |
| GitHub CLI attestations | Verifies GitHub artifact attestations for the release binary. | — |
| sbomlyze | Diffs each SBOM against last week and scores NTIA, CISA, and BSI minimum elements. Maintained by this repository's maintainer. | 0.6.0 |