Skip to main content

KEDA EUVDEUVD-2026-101431

| CVE-2026-77524 CRITICAL
Improper Privilege Management (CWE-269)
2026-10-14 GitHub_M GHSA-637c-6jxx-4rwm
9.9
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain namespace-admin RBAC on tenant namespace
  2. Delivery
    Create TriggerAuthentication pointing Vault address to attacker endpoint
  3. Exploit
    KEDA operator sends its projected ServiceAccount token
  4. Execution
    Capture token and assume operator cluster identity
  5. Impact
    Read cluster-wide Secrets and tamper with workloads

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

Requires KEDA 2.20.2 or earlier deployed with its default cluster-wide operator ServiceAccount, AND an attacker holding namespace-administrator privileges able to create TriggerAuthentication and ScaledObject resources in at least one namespace. The attacker must set hashiCorpVault.address to a tenant-controlled endpoint and select Kubernetes authentication with no explicit credential, causing the operator to send its projected ServiceAccount token outbound. Limiting factors: exploitation is gated by tenant-level RBAC to create those specific CRDs (not anonymous/unauthenticated), and is most impactful in multi-tenant clusters where namespace admins are untrusted relative to the cluster-scoped operator; the fix (2.21.0) adds audience enforcement and an outbound Vault-address allowlist, and the older partial fix CVE-2025-68476 does NOT block this path because its JWT-shape filter accepts the operator token.

Impact

This is a genuine high-priority issue in environments that run KEDA with HashiCorp Vault integration, not merely a high-CVSS artifact. The CVSS:3.1 vector (AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H, 9.9) is internally consistent with the description: a tenant-level namespace administrator (PR:L) can, over the Kubernetes API (AV:N) with no user interaction and low complexity, cause the KEDA operator to leak its own cluster-wide ServiceAccount token, producing a scope change (S:C) from namespace-confined privileges to cluster-wide control. The standout signal is the SSVC-style technical impact: total compromise of a cluster control-plane component (broad Secret reads, workload/admission operations), which is effectively a privilege-escalation-to-cluster-admin primitive (CWE-269). However, several key signals are MISSING: no EPSS score was provided, so exploitation probability cannot be quantified; there is no CISA KEV entry and no indication of a public POC in the supplied data, so this is not confirmed to be actively exploited or weaponized. Exploitation is also gated by a non-trivial prerequisite - the attacker must already hold namespace-admin rights sufficient to create TriggerAuthentication and ScaledObject resources - which lowers real-world mass-exploitation likelihood relative to the raw score and makes this more of an insider/multi-tenant-boundary threat than an internet-facing drive-by. Notably, this bypasses the prior CVE-2025-68476 remediation (the JWT-shape filter accepts the operator token), so partially-patched clusters remain exposed.

Exploit ScenarioDerived

In a multi-tenant Kubernetes cluster, a user with namespace-administrator rights creates a TriggerAuthentication resource pointing hashiCorpVault.address at an endpoint they control and selects Kubernetes authentication with no explicit credential. The KEDA operator dutifully reads its own projected ServiceAccount token and sends it to the attacker's endpoint as a Vault login, handing the attacker the operator's cluster-wide identity and enabling cluster-wide Secret theft and workload/admission tampering. No public exploit was identified at time of analysis, but the attack is simple and deterministic once namespace-admin access exists.

Act Now Prioritize within 24-48h. Why: CRITICAL severity.
Patch available 0.6% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 14, 2026

A privilege escalation in KEDA 2.20.2 and earlier lets a namespace administrator who can create TriggerAuthentication and ScaledObject resources point hashiCorpVault.address at an endpoint they control and select Kubernetes authentication without supplying a credential; KEDA then logs in to that endpoint using the operator pod's projected ServiceAccount token, handing the attacker the operator's cluster-wide permissions including broad Secret reads and workload or admission-related operations. The prior CVE-2025-68476 JWT-shape filter does not block this path because the operator token's subject is a Kubernetes ServiceAccount, so it passes the filter. Exploitation is authenticated (CVSS PR:L) and gated by tenant-level RBAC to create those CRDs, but it is most dangerous in multi-tenant clusters where namespace admins are untrusted relative to the cluster-scoped operator; there is no public exploit code identified at time of analysis, and the issue is fixed in 2.21.0 via audience enforcement plus an outbound Vault-address allowlist.

RemediationAI

Upgrade to KEDA 2.21.0, which fixes the issue: vendor-released patch version 2.21.0 (release notes at https://github.com/kedacore/keda/releases/tag/v2.21.0, fix commit 1e21cc798dedd079e696cdb45388eddc5e18365d, advisory GHSA-637c-6jxx-4rwm). If immediate upgrade is impossible, apply the compensating controls the fix formalizes: configure KEDA_OUTBOUND_FILTER.hashiCorpVault with mode enforce and a trusted allowedEndpoints list so tenant-selected Vault addresses are rejected (avoid mode warn or off, which still permit exfiltration and only log warnings), bind Vault Kubernetes auth to an approved audience by setting --service-account-token-mode=enforce-audience with KEDA_SERVICE_ACCOUNT_TOKEN_AUDIENCES rather than leaving legacy mode, and provision a dedicated projected token via --vault-kubernetes-auth-token-file so the operator's own API token is never used for Vault logins. On pre-2.21.0 builds these knobs do not exist, so the practical interim controls are to stop granting untrusted tenants the ability to create TriggerAuthentication and ScaledObject resources (restricting those RBAC verbs has no KEDA functional side effect for legitimate tenants that do not use Vault auth), network-egress-restrict the KEDA operator namespace to known Vault endpoints (trade-off: breaks any legitimate dynamic Vault address), or disable HashiCorp Vault authentication triggers entirely until the upgrade. Note that legacy mode may expose Kubernetes API credentials and logs warnings at startup and on each use.

Affected VersionsENISA

keda < 2.21.0

Affected Packages

go github.com/kedacore/keda no fix
go github.com/kedacore/keda/v2 fix: 2.21.0
euvd keda fix: 2.21.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 3 packages in go, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

KEDA is a Kubernetes-based Event Driven Autoscaler whose operator runs with cluster-wide credentials. Its HashiCorp Vault integration (pkg/scaling/resolver/hashicorpvault_handler.go) authenticates to Vault using the Kubernetes auth method: it reads the operator pod's projected ServiceAccount token from /var/run/secrets/kubernetes.io/serviceaccount/token and presents it to the Vault address configured by a tenant-editable CRD. Because the address is tenant-controlled and the login path required no explicit credential, any principal able to create TriggerAuthentication/ScaledObject resources could redirect the operator's token to an attacker-controlled server and capture it. This is CWE-269 (Improper Privilege Management): KEDA failed to confine an outbound credential-bearing operation to trusted destinations and failed to bind the token to an approved audience. The token's sub claim identifies a Kubernetes ServiceAccount, so the JWT-shape check introduced for CVE-2025-68476 accepted it, defeating that earlier partial mitigation. The 2.21.0 fix (commit 1e21cc79) adds a dedicated projected token file for Vault logins (/var/run/secrets/keda-vault/token, --vault-kubernetes-auth-token-file), audience enforcement via --service-account-token-mode=enforce-audience with KEDA_SERVICE_ACCOUNT_TOKEN_AUDIENCES, and a KEDA_OUTBOUND_FILTER policy that allowlists trusted Vault endpoints, plus startup warnings when legacy or non-enforcing modes are used. Affected CPE: cpe:2.3:a:kedacore:keda:*:*:*:*:*:*:*:* (all versions through 2.20.2).

Know when Keda 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

Vendor (GitHub_M) PRIMARY 9.9 CRITICAL
AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
vuln.today AI 9.9 CRITICAL

Namespace admin (PR:L) acts over the Kube API (AV:N, AC:L, UI:N) to escape to cluster-wide operator privileges (S:C) yielding full Secret read, workload tamper, and availability impact (C/I/A:H).

3.1 AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

2
Patch available
Oct 14, 2026 - 18:05 EUVD
CVE Published
Oct 14, 2026 - 16:15 cve.org
CRITICAL 9.9

DescriptionCVE.org

KEDA is a Kubernetes-based Event Driven Autoscaling component. In version 2.20.2 and earlier, a namespace administrator who can create TriggerAuthentication and ScaledObject resources can set hashiCorpVault.address to a tenant-controlled endpoint and select Kubernetes authentication without an explicit credential. KEDA then uses the operator pod's projected ServiceAccount token and sends it to that endpoint as a Vault login credential. The JWT-shape filter from the prior CVE-2025-68476 remediation accepts the operator token because its subject is a Kubernetes ServiceAccount, so the attacker can obtain the operator's cluster-wide permissions, including broad Secret reads and workload or admission-related operations. This vulnerability is fixed in 2.21.0.

Executive ViewAI

Why It Matters

KEDA, a Kubernetes autoscaling component, contains a critical privilege escalation vulnerability (CVE-2026-77524, CVSS 9.9) that enables any namespace administrator to assume the KEDA operator's cluster-wide permissions, including broad Secret reads and workload manipulation. This is most dangerous in multi-tenant clusters where namespace administrators are not fully trusted, as it breaks tenant isolation and could lead to widespread credential exposure and unauthorized changes. Although exploitation requires the ability to create specific custom resources and no public exploit identified at time of analysis, the high impact warrants immediate remediation.

Business Impact: Severe
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.6%
Top 51% exploitable
Prevalence
Medium
popular CNCF Kubernetes autoscaler, common but not in every cluster
Threat Intel
1
1 sources
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity CRITICAL
CISA KEV No
Public POC No
EPSS 0.6%
Patch available Yes
Active threat No
Deciding rule
CRITICAL severity
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact
Very High

Priority Score

51
Low Medium High Critical
KEV: 0
EPSS: +1
CVSS: +50
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Privilege escalation occurs when an attacker leverages flaws in access control mechanisms to gain permissions beyond what they were originally granted.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy