Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCompromise account holding RBAC-management custom role
-
DeliveryCall project-scoped RBAC API to edit Role/ServiceAccount
-
ExploitAdd rules or bind identity to more powerful Role
-
ExecutionEscalate to Project-administrator privileges
-
PersistRead Project Secrets and external-system credentials
-
ImpactTamper with or delete Project resources and external artifacts
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V8 - Authorization Least privilege enforcement
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires an authenticated Kargo user who holds a Project-scoped, administrator-created CUSTOM role granting permission to edit that Project's Roles or ServiceAccounts, plus control of an account assigned that role - the two Kargo API operations abused are editing a Role's rules and binding an identity to a Role's ServiceAccount. Default non-administrator roles shipped with Kargo do NOT grant these permissions, so an installation that has not defined such a custom role is not affected. Limiting factors per the vendor: authentication to the Kargo API server is mandatory (PR:H), the delegated RBAC-management permission is normally given only to Project admins, no user interaction is needed, and escalation is bounded to Projects where the attacker already has RBAC-management delegation - it does not by itself grant cluster-wide or cross-Project access. The only complete fix is updating to 1.8.14, 1.9.9 or 1.10.8; the stated workaround is to not delegate Role/ServiceAccount management to users who should not already hold the Project's other permissions (e.g., Secret access). |
| Impact | The vuln.today decision label is act_now and the vendor-supplied CVSS 4.0 vector (CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:L, 9.3) reflects total loss of confidentiality, integrity and availability within a Project plus spillover to external systems - so once the preconditions are met, impact is severe and organizations should apply the fixes without delay. However, the signals are not uniformly alarming: there is no CISA KEV listing, no EPSS score was provided, the vendor explicitly reports 'No known exploitation in the wild', and the only public artifacts are the GHSA advisory and the patch commits - no public exploit code. The CVSS AT:N ('default installations affected') describes only that no race/timing condition is needed; it does NOT mean the flaw is reachable out of the box, because the attacker must still hold an administrator-created custom role granting Role/ServiceAccount edit rights. The vendor itself notes CVSS overweights this case because it under-emphasizes the PR:H barrier. Net assessment: this is a high-impact but precondition-gated privilege-escalation issue - a genuine priority to patch per the act_now decision, but realistic exploitation requires an uncommon custom-role configuration plus compromise of an already fairly privileged account, so it is closer to targeted/insider risk than mass opportunistic exploitation. |
| Exploit ScenarioDerived | An attacker who has compromised an authenticated Kargo account holding an admin-created custom Project role with permission to edit Roles or ServiceAccounts issues an ordinary API request that adds RBAC rules to a Role (or binds their own identity to a more powerful Role). Because the API server writes the change with its own broadly privileged credentials after only a coarse resource-kind check, the attacker escalates to Project-administrator, reads all Project Secrets, and can tamper with Project resources. No public exploit code is identified at time of analysis, and the vendor reports no known exploitation in the wild. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 30, 2026
Privilege escalation in Kargo versions from 0.6.0 before 1.8.14, 1.9.9, and 1.10.8 lets an authenticated user with a delegated Project RBAC-management permission confer rights beyond their own, potentially reaching Project-administrator access and exposing Project Secrets and external Git, container-registry, or Helm-registry credentials. Exploitation requires an administrator-created custom role that permits editing Project Roles or ServiceAccounts plus control of an account assigned that role; default non-administrator roles do not grant the needed permissions, and escalation is bounded to that Project. Vendor fixes are available in 1.8.14, 1.9.9, and 1.10.8; no public exploit identified at time of analysis.
RemediationAI
Vendor-released patch: update to 1.8.14, 1.9.9, or 1.10.8; the 1.11 line also carries the fix, with v1.11.0-rc.1 published, and the vendor states updating is the only complete fix. Until patched, restrict Project-scoped permissions to manage Roles and ServiceAccounts to users who are already intended to have full administrative access to the Project, and do not delegate Role/ServiceAccount management to users who should not also hold the Project's other permissions such as Secret access. Advisory: https://github.com/akuity/kargo/security/advisories/GHSA-wp4p-hr79-q4g8; release links: https://github.com/akuity/kargo/releases/tag/v1.8.14, https://github.com/akuity/kargo/releases/tag/v1.9.9, https://github.com/akuity/kargo/releases/tag/v1.10.8.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Kargo's project-scoped RBAC API models a Kargo Role as a ServiceAccount, Role, and RoleBinding in the Project namespace. The API server wrote Role and ServiceAccount changes using its own broadly privileged credentials after only a coarse check that the caller could edit that resource kind, rather than checking whether the caller already held each permission being granted; this is CWE-269 improper privilege management. A user able to edit a Role could add rules for permissions they did not hold, or bind an identity, including their own, to a more powerful Role, escalating within the Project and reaching Secrets and credentials. The fix adds an explicit per-request authorization check that verifies the caller holds every permission being granted or conferred before applying the change. Affected artifacts include docker/ghcr.io/akuity/kargo and helm/ghcr.io/akuity/kargo-charts/kargo; an installation is exposed only if an administrator has created a custom role granting Role or ServiceAccount management, because default non-admin roles do not include those permissions.
Know when Kargo gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:L
Reached via the network API (AV:N) with an ordinary request (AC:L); requires an admin-granted RBAC-management role (PR:H); escalation crosses the authorization boundary and affects external systems (S:C) with full C/I/A loss.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
Kargo manages and automates the promotion of software artifacts. From 0.6.0 until 1.8.14, 1.9.9, and 1.10.8, two authorization flaws in the project-scoped RBAC API let an authenticated user with delegated permission to manage a Project's Roles or ServiceAccounts confer permissions exceeding the user's own. A user authorized to edit Roles can create, replace, or add rules granting permissions not held by the user; a user authorized to edit a Role's ServiceAccount can bind an identity, including the user's own, to a more powerful Role. A Kargo Role comprises a ServiceAccount, Role, and RoleBinding in the Project namespace. Changes are written using the API server's broadly privileged credentials after only a coarse resource-kind edit check, rather than checking each permission being conferred. This permits escalation to Project-administrator access, disclosure of Project Secrets and credentials, and modification or deletion of Project resources. Stolen Git, container-registry, or Helm-registry credentials can extend confidentiality and integrity impacts to those external systems. Escalation remains limited to Projects where the attacker already has RBAC-management delegation and does not itself grant cluster-wide or cross-Project access. Default non-administrator roles do not permit these operations; exploitation requires an administrator-created custom role granting the relevant permissions and control of an account assigned that role. This issue is fixed in versions 1.8.14, 1.9.9, and 1.10.8.
Articles & Coverage 2
Technical POC Analysis
The bug is CWE-269 Improper Privilege Management in Kargo's project-scoped RBAC API.
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
Kargo, the GitOps promotion platform used to manage application deployments, carries a critical privilege-escalation flaw that lets a user with delegated Project RBAC-management permissions exceed their own authority and potentially gain Project-administrator access, exposing Project Secrets and external Git, container-registry, and Helm-registry credentials. The exposure is constrained to organizations that have granted custom roles permitting edits to Project Roles or ServiceAccounts, and each escalation is bounded to a single Project, but any credentialed Project affected could leak the credentials that underpin software delivery pipelines. Security leadership should care because leaked registry and Git credentials can cascade into supply-chain compromise, and remediation requires coordinated platform upgrades plus RBAC review.
Vendor-released patch: 1.8.14, 1.9.9, and 1.10.8
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Privilege escalation occurs when an attacker leverages flaws in access control mechanisms to gain permissions beyond what they were originally granted.
Authorization bypass in Kargo Kubernetes promotion tool from 1.7.0 before 1.7.8/1.8.11/1.9.3. Batch resource creation by
Kargo's GetConfig() API endpoint fails to validate Bearer token authenticity, allowing unauthenticated attackers to retr
Open redirect vulnerability in Kargo UI OIDC login flow allows unauthenticated remote attackers to redirect users to arb
Kargo versions 1.4.0-1.6.3, 1.7.0-1.7.8, 1.8.0-1.8.11, and 1.9.0-1.9.4 contain a Server-Side Request Forgery vulnerabili
Kargo versions 1.9.0 through 1.9.2 fail to enforce the custom "promote" authorization verb in three REST API endpoints,
EUVD-2026-114371
NVD
CVE.org
EPSS
GitHub
Exploit-DB