Register for the AI for Security Summit: Join Figma, Perplexity & Wiz

CVE-2026-63308
Helm vulnerability analysis and mitigation

Overview

CVE-2026-63308 is a denial-of-service vulnerability in the Helm Kubernetes package manager affecting the Files.Lines template helper in pkg/engine/files.go. It allows attackers to trigger an "index out of range [-1]" panic by including zero-length byte slices (empty files) in Helm chart packages, causing deterministic render failures. Affected versions include helm.sh/helm/v3 from 3.13.0 onward and all helm.sh/helm/v4 releases through 4.2.3; the vulnerability is fixed in commit ba6c9a2. It carries a CVSS v3.1 score of 4.3 (Medium) and a CVSS v4.0 score of 5.3 (Medium) (Github Advisory, Helm Issue).

Technical details

The root cause is improper validation of an array index (CWE-129) in the Files.Lines function within pkg/engine/files.go. The function guards against a nil map entry (f[path] == nil) but fails to account for the case where an empty file is stored as a non-nil, zero-length byte slice. When s := string(f[path]) produces an empty string, the subsequent trailing-newline check s[len(s)-1] attempts to index position -1, triggering a Go runtime panic. The engine recovers this panic and surfaces it as a render error, causing every helm template, install, upgrade, lint, and SDK Engine.Render call that references the empty file to fail with a non-zero exit code. The fix, merged in PR #32290, extends the guard to len(f[path]) == 0 and returns an empty slice, matching the existing behavior for missing files (Helm Issue, Helm PR, Helm Commit).

Impact

Successful exploitation causes a deterministic denial of service affecting Helm's core rendering pipeline — specifically template, install, upgrade, lint, and SDK Engine.Render operations. Any chart that includes an empty file and references it via Files.Lines will fail to render, blocking deployments and upgrades in affected environments. There is no confidentiality or integrity impact; the vulnerability is limited to availability of Helm rendering operations (Github Advisory).

Exploitability

The NVD SSVC assessment classifies exploitation status as "poc" (proof-of-concept available), with the original issue report including a minimal reproducible chart that demonstrates the panic. The vulnerability is not automatable and requires user interaction (passive), meaning a user must process a malicious chart. There is no evidence of in-the-wild exploitation or threat actor attribution at this time. The EPSS score is approximately 0.234% (14th percentile), indicating low near-term exploitation probability. The vulnerability is not listed in the CISA KEV catalog (Github Advisory, Helm Issue).

Exploitation steps

  1. Craft a malicious Helm chart: Create a chart directory structure with an empty file in the files/ directory (e.g., touch panicchart/files/empty.txt) and a Chart.yaml with standard metadata.
  2. Add a vulnerable template: Include a template that references the empty file using the Files.Lines helper, e.g., {{- range .Files.Lines "files/empty.txt" }}{{ . }}{{- end }}.
  3. Distribute the chart: Share the chart via a Helm repository, OCI registry, or direct file transfer to a target that will process it.
  4. Trigger the panic: When the victim runs helm template ./panicchart, helm install, helm upgrade, or helm lint against the chart, the Files.Lines function panics with runtime error: index out of range [-1], causing the operation to fail non-zero and blocking the deployment pipeline (Helm Issue, Helm PR).

Indicators of compromise

  • Logs: Helm CLI output containing runtime error: index out of range [-1] or error calling Lines: runtime error: index out of range [-1] in template rendering errors; non-zero exit codes from helm template, helm install, helm upgrade, or helm lint commands referencing charts with empty files.
  • File System: Presence of zero-byte files within the files/ directory of a Helm chart package (.tgz or unpacked chart directory); chart templates containing {{ range .Files.Lines "..." }} blocks referencing such empty files.
  • Process: Helm processes terminating unexpectedly with panic stack traces in stderr output mentioning pkg/engine/files.go (Helm Issue).

Mitigation and workarounds

The fix is available in commit ba6c9a2 merged into the helm:main branch on July 16, 2026; users should update to a Helm release that includes this commit once a tagged release (e.g., v4.2.4 or later) is published. A backport PR (#32303) for the v3 branch was also opened. As a workaround prior to patching, validate chart contents to ensure no zero-byte files exist in the files/ directory before processing, and implement input validation in chart rendering pipelines to detect and reject malformed chart structures. Red Hat has also issued an errata (RHSA-2026:42230) for affected downstream packages (Helm PR, Helm Commit, Github Advisory).

Community reactions

The vulnerability was originally reported via email on May 26, 2026, with no initial response, and subsequently filed as a public GitHub issue on July 1, 2026. The fix PR (#32290) was reviewed and approved by Helm maintainers gjenkins8 and TerryHowe and merged on July 16, 2026. Community members noted as of late July 2026 that the fix had not yet been included in a tagged release (v4.2.4 had not been published), prompting requests for a release timeline (Helm Issue, Helm PR).

Additional resources

Linux Distribution fix status

Fix availability across major Linux distributions and their releases.

RHEL / CentOS

Unknown

SourceThis report was generated using AI

Related Helm vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-37236CRITICAL9.8
  • Grafana logoGrafana
  • grafana-azure-monitor
NoYesAug 28, 2026
CVE-2026-84445HIGH8.7
  • cAdvisor logocAdvisor
  • cass-operator
NoYesSep 14, 2026
CVE-2026-84304HIGH8.7
  • cAdvisor logocAdvisor
  • gatekeeper-fips-3.23
NoYesSep 01, 2026
CVE-2026-53495MEDIUM6.8
  • Packer logoPacker
  • osbuild-composer.src
NoYesSep 14, 2026
CVE-2026-84303MEDIUM6.3
  • cAdvisor logocAdvisor
  • portainer-agent-2.39
NoYesSep 01, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management