Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach /artifacts/get?source=volume route
-
DeliveryIdentify existing mounted volume
-
ExploitSupply path-traversal file path
-
ExecutionServing process reads out-of-volume file
-
ImpactDisclose configuration or mounted credentials
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK
2 techniques across 2 tactics: Discovery, Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires the attacker to (1) be able to reach the GET /artifacts/get?source=volume route and (2) identify an existing mounted volume to anchor the traversal; the targeted file must be readable by the artifact-serving process - the frontend pod when artifact proxying is disabled, or the selected namespace's artifact-service pod when proxying is enabled. In a deployment with authentication disabled, no application credentials are required (matching PR:N). The principal limiting factor is multi-user mode: there the caller ordinarily must already be authorized for the supplied namespace, and the traversal does not bypass that authorization check, so an unauthorized outsider cannot reach it. Impact is further limited to disclosure of files the serving process can already read, and escape is confined to files outside the selected volume - access to sensitive files already inside a selectable volume depends on the deployment's volume policy, not this flaw. |
| Impact | This is a genuine but bounded priority. The CVSS 7.5 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N) describes the worst-case reachable deployment with authentication disabled, where no credentials are needed and the flaw is network-reachable at low complexity - a realistic concern for standalone/single-user installs. However, the GHSA advisory explicitly states that in multi-user deployments the caller ordinarily must be authorized for the supplied namespace, corresponding to a lower 6.5 score with PR:L; the traversal does not bypass that authorization check, so hardened multi-user clusters face materially lower risk than the headline 7.5 suggests. Impact is confidentiality-only (C:H/I:N/A:N): the attacker reads files the serving process can read, which may include configuration or mounted credentials, but the advisory is careful to note this does not by itself establish cluster compromise, file modification, or availability loss. No EPSS score and no KEV status are provided in the input, and no CISA listing is present, so there is no signal of active or widespread exploitation; the vendor priority label is this_week, consistent with prompt-remediation rather than emergency. Overall this warrants timely patching, especially for auth-disabled deployments, but it is not an automatable full-compromise bug. |
| Exploit ScenarioDerived | An attacker who can reach the GET /artifacts/get?source=volume route on a Kubeflow Pipelines deployment with authentication disabled supplies a crafted file path containing traversal sequences referencing an existing mounted volume. Because the handler did not confine the path to the selected volume, the artifact-serving process (the frontend pod when proxying is disabled, or the namespace artifact-service pod when enabled) streams back files outside that volume, potentially exposing configuration files or mounted credentials. No verified working exploit code is identified in the input; the original report exercised the production handler functions against a mocked pod specification rather than a deployed cluster. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 29, 2026
Path traversal in the Kubeflow Pipelines volume artifact handler (versions through 2.17.3, fixed in 2.18.0) lets a remote caller who can reach GET /artifacts/get?source=volume and name an existing mounted volume read files outside that volume, as long as the serving process can read them - disclosed files may include configuration or mounted credentials. The request is served by the frontend pod when artifact proxying is disabled, or by the selected namespace's artifact-service pod when proxying is enabled; in a deployment with authentication disabled no application credentials are required (matching the PR:N vector), while multi-user deployments require the caller to already be authorized for the supplied namespace. This is a genuine but bounded priority: impact is limited to confidentiality of process-readable files outside the selected volume, and the issue does not by itself establish cluster compromise, file modification, or availability impact; no public exploit code or confirmed active exploitation was identified at time of analysis.
RemediationAI
Vendor-released patch: Kubeflow Pipelines 2.18.0. Upgrade every process that serves volume artifacts to that version - the frontend deployment and, where artifact proxying is enabled, each namespace's artifact-service receiver - because replacing only the shared UI leaves older receivers exploitable; follow the custom storage configuration and rollout guidance in https://github.com/kubeflow/pipelines/blob/2.18.0/docs/operator-guides/upgrade-2.18.md#custom-storage-configuration-and-rollout and the release notes at https://github.com/kubeflow/pipelines/releases/tag/2.18.0, and consult the advisory at https://github.com/kubeflow/pipelines/security/advisories/GHSA-2fg9-fx2f-439r. The vendor states that until upgrading, operators should restrict access to volume artifact routes and avoid sensitive mounts in artifact-serving containers; the trade-off is that restricting those routes breaks volume-source artifact downloads for legitimate users, and removing sensitive mounts may take away artifacts pipelines currently rely on. Note also that the fix addresses escape from the selected volume only - access to sensitive files already inside a selectable volume depends on the deployment's volume policy, so operators should review which volumes are exposed as artifact volumes. Enabling authentication, or keeping multi-user mode so callers must be authorized for the target namespace, reduces the PR:N exposure described by the CVSS score.
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
Kubeflow Pipelines ships a TypeScript/Node Express server in frontend/server/handlers/artifacts.ts that proxies artifact downloads for sources including minio, s3, gcs, http, https and volume. For the volume source, the handler took a caller-supplied key/path and opened it relative to a selected mounted volume without confining the resolved path to that volume root - a classic CWE-22 path traversal. The fix in PR #13677 introduces an openFileWithinRoot helper, validates path components and filesystem containment, streams the validated file handle, adds strict parsing/validation of the artifact query parameters (source, bucket, key, providerInfo, namespace, peek), and adds regression tests covering traversal and symlink containment; it also expands the e2e workflow so changes to artifacts.ts trigger the multi-user artifact-proxy and SeaweedFS namespace-isolation checks. The route remains supported after the fix. Deployment architecture matters: with artifact proxying disabled the frontend pod serves the volume request, and with proxying enabled the artifact-service pod in the selected namespace does, so every process that serves volume artifacts must be patched. The original report exercised the production handler functions with a mocked pod specification; no deployed-cluster reproduction was performed, so the exact trigger path in a running cluster is inferred from the handler code rather than demonstrated end to end.
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
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Network-reachable route with low complexity; PR:N reflects the auth-disabled deployment scenario, confidentiality-only impact (file read) with no integrity or availability effect.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
Kubeflow Pipelines enables users to build and deploy portable, scalable machine learning workflows. Prior to 2.18.0, the volume artifact handler for GET /artifacts/get?source=volume did not confine a caller-supplied file path to the selected volume. A caller who can reach the route and identify an existing mounted volume can use path traversal to read files outside that volume when the artifact-serving process can read them. The frontend pod serves the request when artifact proxying is disabled, while the selected namespace's artifact-service pod serves it when proxying is enabled. A deployment with authentication disabled requires no application credentials; in multi-user deployments, the caller ordinarily must be authorized for the supplied namespace. This issue is fixed in version 2.18.0.
Technical POC Analysis
CWE-22, Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal'), in the Kubeflow Pipelines volume artifact handler behind GET /artifacts/get?source=volume.
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
CVE-2026-118758 is a high-severity path traversal vulnerability in Kubeflow Pipelines (versions through 2.17.3) that allows a remote unauthenticated attacker to read sensitive files outside mounted volumes when authentication is disabled, potentially exposing configuration or credentials. Leadership should prioritize remediation because multi-user deployments are also at risk if an authorized user is compromised, and the lack of a public exploit code does not reduce the need for immediate action given the high impact on confidentiality.
Apply vendor patch.
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
Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.
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
Memory exhaustion in the Kubeflow Pipelines API server (versions through 2.17.3) lets a network-reachable, unauthenticat
Unauthorized log disclosure in the Kubeflow Pipelines API server allows a caller who can reach the backend and supply a
Kubeflow Model Registry through 0.3.17 allows an authenticated namespace user with permission to create InferenceService
There exists a stored XSS Vulnerability in Kubeflow Pipeline View web UI. Rated high severity (CVSS 7.1), this vulnerabi
Cross-tenant artifact disclosure in the Kubeflow Pipelines frontend (kfp-frontend) lets an authenticated user who can re
EUVD-2026-113214
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB