Kubeflow Pipelines lets callers read other runs' logs without permission checks
Someone who can reach the Kubeflow Pipelines backend and knows a run ID can read that run's logs, which may contain private data or passwords. Live logs can also be pulled from an unrelated pod in the same namespace.
| Severity | HighCVSS 7.5 of 10 |
|---|---|
| Being exploited? | UnclearNo reports either way yet |
| Fix available? | YesKubeflow Pipelines 2.18.0 (fix in PR #13684, package version 0.0.0-20260904182349-be4723e33727). · since 30 Oct 2026 |
| How sure is this? | Official, 2 sourcesBacked by an official source |
How the attack works simplified
- 1Attacker with accessCan reach the backend API server
- 2Knows a run IDObtained or guessed; node or pod ID also needed
- 3Log request sentHandler does not check run ownership
- 4Logs returnedLive or archived logs use server permissions
- ResultAttacker reads another run's logs
What happened
The API server's GET /apis/v1alpha1/runs/{run_id}/nodes/{node_id}/log handler returns logs without authorizing the caller against the run, and for live logs accepts the node ID as a pod name without checking the pod belongs to the run.
Are you affected?
You are affected if you run Kubeflow Pipelines API server versions through 2.17.3 and the backend log endpoint is reachable by callers who should not read every run's logs.
| Package / product | Affected versions | Fixed in |
|---|---|---|
| github.com/kubeflow/pipelines · go | < 0.0.0-20260904182349-be4723e33727 | 0.0.0-20260904182349-be4723e33727 |
| github.com/kubeflow/pipelines · go | = 1.7.0-alpha.3 | no fix yet |
What to do
- Upgrade the Kubeflow Pipelines API server to 2.18.0 or later
- Until upgraded, restrict network or gateway access to the backend log endpoint
- If you use custom Kubernetes roles, grant readLog on runs in the pipelines.kubeflow.org group; shared read access alone does not grant log access
Timeline
- 29 Oct 2026, 17:18 UTCPublicly disclosed
- 29 Oct 2026, 17:18 UTCReported by NVD · NVD
- 29 Oct 2026, 17:20 UTCPicked up by Zero Radar
- 30 Oct 2026, 23:14 UTCGitHub Advisory reported on it · GitHub Advisory
- 30 Oct 2026, 23:14 UTCFixed version published: github.com/kubeflow/pipelines 0.0.0-20260904182349-be4723e33727 · GitHub Advisory
Sources 2 reports, oldest first
Official vendor, government CERT or advisory database
- CVE-2026-118759NVD · 29 Oct 2026, 17:18 UTC
- Kubeflow Pipelines: Run-log endpoint permits unauthorized access to pod logsGitHub Advisory · 30 Oct 2026, 23:13 UTC
Technical details
- ID
- CVE-2026-118759 · GHSA-wg5q-x4j9-qm54
- CVSS
- 7.5 / 10
- Disclosed
- 29 Oct 2026, 17:18 UTC
- On Zero Radar
- 29 Oct 2026, 17:20 UTC (3 min after disclosure)
- Last change
- 30 Oct 2026, 23:14 UTC
The plain-language parts and the attack diagram were written by an AI model (anthropic/claude-haiku-5.5) from the sources above. Facts like versions, exploitation and dates come from the sources themselves. How Zero Radar works