Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as namespace tenant user
-
DeliveryCreate InferenceService with malicious url annotation
-
ExploitController forwards ServiceAccount token to attacker server
-
ExecutionCapture controller bearer token
-
ImpactModify other tenants' InferenceServices cluster-wide
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V4 - API and Web Service URL allowlisting, SSRF prevention
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Credential Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires an authenticated tenant with permission to create InferenceService resources in a namespace of a multi-tenant Kubeflow Model Registry deployment (≤0.3.17), and an attacker-controlled HTTP endpoint to receive the forwarded token. The trigger is specifically the modelregistry.kubeflow.org/url annotation, which the InferenceService controller follows and to which it attaches its ServiceAccount bearer token - this is default controller behavior, so no special non-default configuration is needed. Limiting factors: the attacker must already hold valid namespace/tenant credentials and InferenceService create rights (PR:L), and must host a reachable collection server; there is no user-interaction requirement, so exploitation is otherwise straightforward for any insider or compromised tenant. |
| Impact | The provided CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:H/VA:N, base 7.1) frames this as a network-reachable, low-complexity attack that requires low privileges (PR:L) - i.e. an already-authenticated namespace tenant - with no user interaction, yielding low confidentiality (VC:L, the leaked bearer token) but HIGH integrity impact (VI:H, the ability to modify other tenants' InferenceServices cluster-wide). The integrity impact is the real story: this is a multi-tenant isolation break, not merely information disclosure. However, several escalation signals are MISSING: no EPSS score was provided, there is no CISA KEV listing (not actively exploited per available data), no SSVC decision block was supplied, and no confirmed public exploit code was identified (a detailed VulnCheck advisory and a hackmd technical writeup exist, but these document the technique rather than confirm weaponized PoC). Net assessment: a genuine, high-value finding for any organization running multi-tenant Kubeflow Model Registry, because PR:L is a low bar inside a shared cluster and the payoff is cluster-wide tenant compromise - but it is gated behind having authenticated tenant access, and the affected product has a relatively narrow deployment footprint, so this is a targeted-risk issue rather than a mass-exploitation threat. Note the CVSS 4.0 subsequent-system metrics are all N despite the clearly cross-tenant/cross-authorization-boundary impact, which arguably understates the scope dimension - verify against vendor advisory. |
| Exploit ScenarioDerived | A legitimate but malicious (or compromised) tenant with permission to create InferenceService objects in their namespace sets the modelregistry.kubeflow.org/url annotation to point at an attacker-controlled HTTP server. When the Kubeflow InferenceService controller processes the annotation, it forwards its own ServiceAccount bearer token to that server, letting the attacker capture it and then use the controller's cluster-wide privileges to read and modify other tenants' InferenceServices. No weaponized public exploit is confirmed, but VulnCheck and a public hackmd writeup describe the technique in detail. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 14, 2026
Kubeflow Model Registry through 0.3.17 allows an authenticated namespace user with permission to create InferenceService resources to steal the InferenceService controller's ServiceAccount bearer token. The attacker creates an InferenceService with the modelregistry.kubeflow.org/url annotation pointing to an attacker-controlled server; the controller follows the annotation and attaches its token, which the attacker captures and then uses to modify other tenants' InferenceServices cluster-wide. This is a server-side request forgery (CWE-918) requiring low privileges (PR:L) and no user interaction; no public exploit code was identified at time of analysis, and no CISA KEV entry exists.
RemediationAI
No vendor-released patch was identified at time of analysis. Until a fixed version is available, restrict the ability to create or modify InferenceService resources to trusted tenants and service accounts, since the attack requires InferenceService create rights (PR:L). Apply Kubernetes network policies to limit the InferenceService controller's outbound traffic to only known, trusted model registry endpoints; this will block the SSRF to attacker-controlled servers but may break legitimate integrations if not carefully scoped. Rotate the controller ServiceAccount token if compromise is suspected, and audit for InferenceService objects with the modelregistry.kubeflow.org/url annotation pointing to external or unexpected hosts. Consider running the controller with a dedicated ServiceAccount and minimal RBAC, though the controller typically requires cluster-wide write access to InferenceServices, so RBAC reduction may impact functionality. Monitor upstream kubeflow/hub for a patched release and apply it as soon as available. References: https://github.com/kubeflow/hub, https://hackmd.io/@1ExmmukzRMWN7B4gQ4W-4Q/kubeflow-hub-controller-token-url-forwarding, and the VulnCheck advisory.
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
This is a server-side request forgery (SSRF, CWE-918) in the Kubeflow Model Registry InferenceService controller. The controller reads the modelregistry.kubeflow.org/url annotation on InferenceService objects and makes HTTP requests to that URL, attaching its ServiceAccount bearer token for authentication (see kubeflow/hub v0.3.17 references: cmd/controller/main.go L224-L228, pkg/inferenceservice-controller/controller.go L268-L292, and pkg/openapi/client.go L420-L423). Because the annotation is user-controllable and the controller does not validate the destination, an attacker with InferenceService create rights can point the annotation to an attacker-controlled server, receive the bearer token, and then use it to authenticate to the Kubernetes API with the controller's privileges - allowing modification of InferenceServices across all namespaces. The root cause is insufficient validation of a user-supplied URL used in a server-side request, a classic SSRF pattern. The affected product is Kubeflow Model Registry through version 0.3.17 (EUVD reports Model Registry 0 ≤0.3.17).
Know when Kubeflow 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:L/UI:N/VC:L/VI:H/VA:N/SC:N/SI:N/SA:N
Authenticated tenant (PR:L) sends a network request with no interaction; leaked SA token crosses the authorization boundary (S:C) enabling cluster-wide tenant modification (I:H), with only the token exposed (C:L) and no availability impact.
Primary rating from Vendor (vulncheck).
CVSS VectorVendor: vulncheck
DescriptionCVE.org
Kubeflow Model Registry through 0.3.17 contains a server-side request forgery vulnerability that allows namespace users to steal the controller ServiceAccount token via the modelregistry.kubeflow.org/url annotation. Attackers can create an InferenceService pointing the annotation at their server, capture the bearer token, and modify other tenants' InferenceServices cluster-wide.
Articles & Coverage 1
Executive ViewAI
Kubeflow Model Registry through 0.3.17 contains a high-severity multi-tenant isolation flaw that lets a low-privileged authenticated user take over the InferenceService controller's ServiceAccount and modify other tenants' model-serving workloads across the cluster. This threatens the integrity and availability of shared ML platforms, potentially exposing or corrupting model deployments for any organization running affected Kubeflow environments. Security leadership should prioritize containment because no vendor-released patch is available and the impact crosses namespace boundaries.
No vendor-released patch identified at time of analysis; interim mitigations include restricting RBAC to prevent low-privileged users from creating InferenceService resources, enforcing admission controls that block or allowlist modelregistry.kubeflow.org/url annotations, applying network egress restrictions on the InferenceService controller to trusted endpoints only, rotating the controller ServiceAccount token, and monitoring for anomalous cross-namespace InferenceService modifications. If these cannot be applied, disable the Model Registry integration until a fixed version is available.
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
Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.
kubeflow/kubeflow is vulnerable to a Regular Expression Denial of Service (ReDoS) attack due to inefficient regular expr
Server-Side Request Forgery (SSRF) in kubeflow/kubeflow. Rated medium severity (CVSS 6.5), this vulnerability is remotel
Cross-site Scripting (XSS) - Reflected in kubeflow/kubeflow. Rated medium severity (CVSS 6.1), this vulnerability is rem
Server-side request forgery in the Kubeflow Pipelines frontend server (prior to 2.17.0) lets any unauthenticated network
Authorization token theft in Kubeflow Community Distribution before 26.03-rc.1 lets a low-privileged tenant hijack other
There exists a stored XSS Vulnerability in Kubeflow Pipeline View web UI. Rated high severity (CVSS 7.1), this vulnerabi
EUVD-2026-99261
GHSA-q9m2-3393-574q
NVD
CVE.org
EPSS
Exploit-DB