Impact
Kargo’s REST API contains three endpoints—/v1beta1/projects/{project}/freight/{freight}/approve, /v1beta1/projects/{project}/stages/{stage}/promotions, and /v1beta1/projects/{project}/stages/{stage}/promotions/downstream—that omit enforcement of the custom ‘promote’ authorization verb. This omission allows users who have standard Kubernetes RBAC rights to patch freight status or create promotions to advance Freight objects through promotion pipelines without having explicit promotion rights. The result is an unauthorized elevation of privilege that can compromise the integrity of deployment workflows. This weakness is identified as CWE‑862, Missing Authorization.
Affected Systems
Affected versions are Kargo v1.9.0 through v1.9.2. The vulnerability applies to all deployments of the Kargo product from the Akuity vendor, including environments that rely on the default REST API. The issue was addressed in Kargo v1.9.3.
Risk and Exploitability
The CVSS score of 5.3 indicates a moderate severity, primarily due to the privilege escalation potential. The EPSS score is below 1%, implying a low likelihood of widespread exploitation at the time of assessment. Kargo is not listed in the CISA KEV catalog, and no public exploits have been reported. Exploitation requires access to the REST API with typical RBAC permissions, which could be available to cluster users or service accounts. If such access exists, an attacker can expose approval or promotion functionality without the intended authorization check.
OpenCVE Enrichment
Github GHSA