Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate to cluster with Pod read access
-
ExploitRead task init container env vars from Pod spec
-
ExecutionExtract base64 SECRETS variable
-
ImpactDecode to recover FILE-mounted secrets
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V14 - Data Protection Encrypted storage of sensitive data
|
| Exploitation Conditions | Requires a Flyte 2.0.1-2.0.51 deployment whose embedded secret manager webhook mounts secrets in FILE mode, because the webhook base64-encodes those FILE-mounted values into the SECRETS environment variable of the task's init container within the Pod spec. The attacker must hold Kubernetes RBAC permission to read Pods (get/list) in the relevant namespace but does NOT need access to the Kubernetes Secret store - that privilege split is precisely what the flaw bypasses. Limiting factors: exploitation is confined to principals already authenticated to the cluster with Pod read rights, only affects secrets configured as FILE mounts (not necessarily env-injected secrets), and is most impactful in multi-tenant clusters that intentionally segregate Pod-read from Secret-read permissions. |
| Impact | This is a credible but conditional information-disclosure issue rather than a critical remote-takeover bug. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N) scores 7.1 HIGH, driven entirely by high confidentiality impact with no integrity or availability impact. PR:L confirms an authenticated principal is required - specifically a Kubernetes user/service account holding Pod read permission - so this is not an unauthenticated internet-facing flaw despite AV:N. The AV:N reflects that the Kubernetes API server (where Pod specs are read) is network-reachable, but exploitation presupposes existing cluster credentials. No EPSS score, CISA KEV listing, or POC/exploit-code flag is present in the input, so there is no public exploit identified at time of analysis and no evidence of active exploitation; the only exploitation-relevant artifacts are a VulnCheck advisory and a third-party hackmd technical write-up describing the mechanism. The signals are consistent with each other (no conflict between CVSS and description), pointing to a real but privilege-gated priority: it matters most as a privilege-boundary/least-privilege bypass inside multi-tenant Flyte-on-Kubernetes clusters, not as a mass-exploitable vulnerability. Patch/fixed-version information is NOT present in the provided input and could not be independently verified. |
| Exploit ScenarioDerived | In a multi-tenant Flyte-on-Kubernetes deployment, a low-privileged user who has been granted only Pod read access (but explicitly denied access to the Kubernetes Secret store) lists or gets a task Pod and reads its init container spec. The embedded secret manager webhook has written FILE-mounted secret values as base64 into the SECRETS environment variable, so the user simply base64-decodes those values to recover secrets they were never authorized to see. No public exploit code is identified at time of analysis, but the technique is fully documented in the referenced write-up and requires no special tooling. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 11, 2026
Secret values used by Flyte task pods can be recovered by anyone who can read Pods: in Flyte 2.0.1 through 2.0.51 the embedded secret manager webhook base64-encodes FILE-mounted secret contents into the SECRETS environment variable of the task's init container, so a principal with Kubernetes Pod get/list rights in the namespace can decode them without holding any Secret-store permission - the exact privilege separation the feature was meant to preserve. Assessed as a credible but conditional information-disclosure issue rather than a critical remote-takeover bug: exploitation requires an authenticated cluster principal with Pod-read RBAC and a deployment that mounts secrets in FILE mode, and it is most damaging in multi-tenant clusters that intentionally segregate Pod-read from Secret-read. Base64 encoding is not encryption, so confidentiality is fully lost for affected secrets (CVSS 4.0 score 7.1, VC:H, PR:L, no integrity or availability impact); no public exploit code or active exploitation was identified at time of analysis.
RemediationAI
No vendor-released patch was identified in the available intelligence at time of analysis, and the referenced GitHub links point at the vulnerable source regions rather than a tagged fix, so remediation currently depends on compensating controls. The most direct control is to remove the broad Pod-read grant: audit and tighten Kubernetes RBAC so that roles with get/list on pods are granted only to principals who are also authorized to read the corresponding Secrets, since the flaw's entire advantage comes from splitting those two permissions. Where secrets must be delivered to pods, prefer a runtime secret-fetch path (for example an external secret backend or sidecar/Vault-style retrieval) over the embedded secret manager's FILE-mount-to-env copying, and switch workloads off FILE-mounted secrets whose values land in the SECRETS environment variable; the trade-off is added runtime dependency on the secret backend and possible task startup latency or failure modes if the backend is unavailable. Consider disabling or bypassing the embedded secret manager webhook for namespaces that handle sensitive data, accepting that tasks relying on it will fail until an alternative is configured. Because any value already exposed in a Pod spec must be treated as compromised, rotate every secret that was mounted in FILE mode under the affected versions and review Kubernetes audit logs for get/list calls against pods by principals lacking Secret-read rights. Note that blanket reductions in Pod-read access can break CI/CD observability, kubectl diagnostics, and operator tooling, so scope the change per namespace rather than cluster-wide.
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
The root cause is CWE-312, Cleartext Storage of Sensitive Information: Flyte's embedded secret manager in flyteplugins/go/tasks/pluginmachinery/secret/embedded_secret_manager.go reads secret material and the admission webhook in executor/pkg/webhook/handler.go then materializes it into the Pod specification, writing base64-encoded FILE-mounted values into the SECRETS environment variable of the init container. Because base64 is a reversible encoding rather than a cryptographic protection, the value is effectively cleartext to anyone who can fetch the Pod object via the Kubernetes API - a design flaw common to admission-webhook secret injection, where the Pod spec itself becomes a secret-bearing artifact. The affected component is the Go-based Flyte workflow orchestration platform (CPE cpe:2.3:a:flyteorg:flyte), specifically the embedded secret manager path rather than an external/pluggable secret backend. The CVSS 4.0 vector CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N (and the assessor's CVSS 3.1 equivalent AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N) confirms the profile: network-reachable API, low-privilege authenticated attacker (PR:L, so authenticated rather than anonymous), high confidentiality impact, and no integrity or availability effect. Note the scope of the exposure is limited to secrets configured as FILE mounts; secrets delivered through other mechanisms are not necessarily copied into the Pod spec by this code path.
Know when Kubernetes 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:H/VI:N/VA:N/SC:N/SI:N/SA:N
Kubernetes API is network-reachable (AV:N) but requires authenticated Pod-read RBAC (PR:L); impact is pure secret disclosure, so C:H with I:N/A:N and no scope change.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
Flyte 2.0.1 through 2.0.51 contains a cleartext secret storage vulnerability that allows users with Pod read access to obtain secrets by reading init container environment variables. The embedded secret manager webhook writes base64-encoded FILE-mounted secret values into the SECRETS environment variable, letting principals without Secret store access decode them from the Pod spec.
Executive ViewAI
Flyte versions 2.0.1 through 2.0.51 expose the contents of file-mounted secrets to any cluster user holding basic Pod read permissions in the affected namespace, because those values are base64-encoded - not encrypted - into an environment variable on every task's init container. This breaks the intended separation between 'can see Pods' and 'can read secrets,' meaning teams operating shared or multi-tenant Kubernetes clusters should assume that credentials, tokens, and API keys mounted in FILE mode are readable by a much broader group of principals than intended. Because no vendor patch is available, leadership should treat this as an open, unmitigated confidentiality exposure for any Flyte deployment that uses file-mounted secrets in a namespace where Pod-read rights are broadly granted.
No vendor-released patch identified at time of analysis. Interim mitigations: restrict Kubernetes Pod get/list RBAC in Flyte namespaces to the smallest possible set of principals, rotate all FILE-mounted secrets exposed to broad Pod-read audiences, prefer secret delivery modes that do not place values in init-container environment variables, and monitor for anomalous Pod enumeration or environment-variable access until a fixed Flyte release 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
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
More in Kubernetes
View allA critical vulnerability in Kubernetes ingress-nginx controller allows unauthenticated attackers with pod network access
Credential-harvesting malware compromised 84 versions of 42 TanStack npm packages on 2026-05-11 via chained GitHub Actio
Kubernetes ingress-nginx contains a configuration injection vulnerability via the mirror-target and mirror-host Ingress
A security issue was discovered in ingress-nginx https://github.com/kubernetes/ingress-nginx where the `auth-url` Ingres
A security issue was discovered in ingress-nginx https://github.com/kubernetes/ingress-nginx where the `auth-tls-match-c
Kubernetes API server in all versions allow an attacker who is able to create a ClusterIP service and set the spec.exter
A security issue was discovered in Kubernetes where a user that can create pods on Windows nodes may be able to escalate
Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes. Rated critical severity (CVSS 9.9), this vulne
Unauthenticated remote attackers can trigger complete database overwrites, server-side file reads, and SSRF attacks agai
The Kubernetes integration in GitLab Enterprise Edition 11.x before 11.2.8, 11.3.x before 11.3.9, and 11.4.x before 11.4
Fluentd configuration injection in the kube-logging Logging operator before 6.6.0 allows a namespace-scoped user who can
Authenticated Typebot users can abuse the webhook block (HTTP Request component) in versions prior to 3.13.1 to issue ar
EUVD-2026-96894
GHSA-9m8h-33m4-p9vv
NVD
CVE.org
EPSS
Exploit-DB