CVE-2025-53547
📋 TL;DR
This vulnerability in Helm allows local code execution when updating dependencies if a malicious Chart.yaml file exists and Chart.lock is symlinked to an executable file. Attackers can write arbitrary content to symlinked files, potentially leading to command execution. Users of Helm versions before 3.18.4 who update dependencies with malicious charts are affected.
💻 Affected Systems
- Helm
📦 What is this software?
Helm by Helm
Helm by Helm
⚠️ Risk & Real-World Impact
Worst Case
Full system compromise through arbitrary code execution with the privileges of the Helm user, potentially leading to lateral movement within Kubernetes clusters.
Likely Case
Local privilege escalation or execution of malicious commands within the context of the Helm user, potentially affecting Kubernetes deployments.
If Mitigated
No impact if proper access controls prevent symlinking to sensitive files or if malicious charts are not processed.
🎯 Exploit Status
Exploitation requires local access to create malicious chart files and symlinks. The advisory provides technical details but no public exploit code is known.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 3.18.4
Vendor Advisory: https://github.com/helm/helm/security/advisories/GHSA-557j-xg8c-q2mm
Restart Required: No
Instructions:
1. Check current Helm version: helm version
2. Upgrade Helm: helm repo update && helm upgrade --install helm stable/helm --version 3.18.4
3. Verify upgrade: helm version
🔧 Temporary Workarounds
Avoid symlinking Chart.lock
allEnsure Chart.lock files are not symlinked to executable files or sensitive system files.
find . -type l -name 'Chart.lock' -exec ls -la {} \;
rm -f Chart.lock if it's a symlink
Restrict chart sources
allOnly use charts from trusted repositories and verify chart contents before processing.
helm repo list
helm repo add only-trusted-repo https://trusted.example.com/charts
🧯 If You Can't Patch
- Implement strict file permissions to prevent symlinking Chart.lock to executable files
- Monitor for suspicious Helm operations and review all chart files before dependency updates
🔍 How to Verify
Check if Vulnerable:
Check Helm version: helm version | grep -E 'v3\.(0-17|18\.(0-3))'
Check Version:
helm version --short
Verify Fix Applied:
Verify Helm version is 3.18.4 or later: helm version | grep 'v3.18.4'
📡 Detection & Monitoring
Log Indicators:
- Failed dependency updates with symlink warnings
- Unexpected file writes to system locations during Helm operations
Network Indicators:
- Unusual outbound connections from Helm processes post-dependency updates
SIEM Query:
process.name:"helm" AND (file.path:"*Chart.lock" OR file.path:"/etc/*" OR file.path:"/home/*/.bashrc")