Skip to main content

Airflow Kubernetes Provider CVE-2026-27173

| EUVDEUVD-2026-30977 HIGH
Insertion of Sensitive Information into Externally-Accessible File (CWE-538)
2026-05-19 apache GHSA-524w-vq63-2xhf
8.7
CVSS 3.1 · Vendor: apache
View

Attack ChainAIDerived

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

  1. Access
    Obtain read-only Kubernetes Pod RBAC
  2. Delivery
    Read worker pod spec exposing workload JWT
  3. Exploit
    Replay token to Execution API /run endpoint
  4. Execution
    Receive fresh execution-scoped token
  5. Persist
    Invoke Task SDK actions
  6. Impact
    Modify Airflow database state

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V14 - Data Protection Sensitive file access control
Exploitation Conditions

Requires Apache Airflow deployed with the KubernetesExecutor (CNCF Kubernetes provider < 10.17.0) and an attacker holding read-only RBAC (get/list/watch) on Pods in the namespace where worker pods are scheduled; the exploitable material is the 'workload'-scoped JWT the scheduler embeds in the worker pod's workload JSON payload. Limiting factors that reduce realistic risk: the attacker must already be authenticated to the Kubernetes API with pod-read permission (PR:L, not anonymous), only KubernetesExecutor deployments embed the token this way, and the harvested token is time-bounded - the workload token expires after [scheduler] task_queued_timeout (default 600 seconds) and execution tokens after ~10 minutes - so the reuse window is finite though renewable while a task is active.

Impact

Signals conflict in severity. The vendor CVSS is 8.7 (High) driven by C:H/I:H and a scope change, but every exploitation-likelihood signal is low: EPSS is 0.01% (2nd percentile), there is no KEV listing, no known POC, and CISA SSVC reports Exploitation=none, Automatable=no, Technical Impact=partial. Exploitation is not remote-unauthenticated - it requires an actor who already holds read-only Kubernetes Pod RBAC in the namespace where Airflow worker pods run, making this a lateral-movement/insider escalation rather than an internet-facing threat. One data conflict to verify: the vendor vector uses AV:L, yet reading Kubernetes Pod objects is normally performed over the network-reachable Kubernetes API server, which argues for AV:N and a slightly higher base score; treat the local vs. network distinction as deployment-dependent. Net priority: patch on a normal cadence, prioritized higher only where untrusted or broad namespace read access exists.

Exploit ScenarioDerived

A data engineer or compromised service account granted only read-only Kubernetes Pod permissions runs 'kubectl get pod <worker> -o yaml' and extracts the embedded workload-scoped JWT from the pod's workload payload. They replay that bearer token against the Airflow Execution API /run endpoint to obtain a fresh execution-scoped token, then invoke Task SDK operations to read task context and modify Airflow database state as if they were the running task. No public exploit code is known, but the technique requires only standard Kubernetes tooling.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.0% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Jul 23, 2026

Privilege escalation in the Apache Airflow CNCF Kubernetes provider (versions before 10.17.0) exposes worker JWT tokens to any principal holding read-only access to Kubernetes Pods. When Airflow runs with the KubernetesExecutor, the scheduler embeds a 'workload'-scoped Execution API JWT in the pod's workload payload, so a low-privileged user who can read pod objects can harvest that token and impersonate a running task via the Task SDK, including actions that mutate Airflow database state. There is no public exploit identified at time of analysis; EPSS is 0.01% (2nd percentile) and CISA SSVC rates exploitation as none, so this is an insider/lateral-movement risk rather than a mass-exploited flaw.

RemediationAI

Vendor-released patch: upgrade the Apache Airflow CNCF Kubernetes provider to 10.17.0 or later, which the fix in https://github.com/apache/airflow/pull/60108 delivers by separating long-lived workload tokens from the standard execution-scoped tokens and no longer exposing reusable worker credentials; see the advisory at https://lists.apache.org/thread/pk3m2z4s2rkmc0v6gh9hnch9spc6stqw. If you cannot upgrade immediately, tighten Kubernetes RBAC so that only trusted service accounts hold get/list/watch on Pods in the Airflow worker namespace (side effect: breaks tooling or users that legitimately inspect pods), isolate worker pods in a dedicated namespace to limit who can read them, and reduce [scheduler] task_queued_timeout to shrink the workload token's validity window (trade-off: a lower timeout also causes the scheduler to reap queue-starved tasks sooner, which can fail tasks under a backed-up queue). These are compensating controls only - they narrow the exposure window but do not remove the token from the pod definition.

Affected VersionsENISA

Apache Airflow CNCF Kubernetes provider 0 <10.17.0

Affected Packages

pypi apache-airflow-providers-cncf-kubernetes fix: 10.17.0
euvd apache_airflow_cncf_kubernetes_provider fix: 10.17.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in pypi, euvd

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

Technical ContextAI · show details

The affected component is Apache Airflow's CNCF Kubernetes provider used by the KubernetesExecutor, which launches each task in its own worker pod. Airflow's Execution API authenticates workers with JWTs of two scopes: a 'workload'-scoped token (lifetime tied to [scheduler] task_queued_timeout, default 600 seconds) generated by the scheduler and embedded in the workload JSON delivered to the executor/pod, and a short-lived 'execution'-scoped token (default 10 minutes) issued at the /run endpoint and transparently refreshed by JWTReissueMiddleware. The vulnerability arises because the long-lived workload token is placed into the pod definition, which is readable through the Kubernetes API by anyone with get/list RBAC on Pods. This is a CWE-538 issue (insertion of sensitive information into an externally-accessible location): a Kubernetes RBAC read boundary leaks a credential that grants Airflow application/database privileges, which is why the vendor scored it with a changed scope (S:C).

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

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

Reading pod objects uses the network-reachable Kubernetes API (AV:N), needs only read-only pod RBAC (PR:L), and crosses the K8s boundary into Airflow's DB (S:C) with C:H/I:H and limited A:L.

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

Primary rating from Vendor (apache).

CVSS VectorVendor: apache

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

Lifecycle Timeline

2
CVE Published
May 19, 2026 - 19:19 cve.org
HIGH 8.7
CVE Published
May 19, 2026 - 19:19 nvd
UNKNOWN (no severity yet)

DescriptionCVE.org

JWT tokens that were used by workers in Kubernetes Executors have been exposed to users who had read only access to Kuberentes Pods. This could allow users with just read-only access to perform actions that were only available to running tasks via Task SDK and potentially allow to modify state of Airflow Database for tasks.

Executive ViewAI

Why It Matters

Apache Airflow organizations using KubernetesExecutor face a privilege escalation risk in the Kubernetes provider: any user with pod-read permissions can intercept authentication tokens to execute unauthorized tasks and modify orchestration database state. Leadership should prioritize patching within one week, as this vulnerability bridges read-only pod access to full task execution capability.

Business Impact: High
Compensating Controls

Apply vendor patch (Apache Airflow CNCF Kubernetes provider version 10.17.0 or later). Interim mitigation while patching: restrict Kubernetes pod-read permissions to minimum necessary principals and monitor service account token activity for suspicious usage.

Threat Intelligence Overview

EPSS Score
0.0%
Top 98% exploitable
Prevalence
High
widely deployed workflow orchestrator; Kubernetes executor common in production Airflow
Threat Intel
1
1 source
Social Media
1
Sightings
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA CIRCL GitHub VulDB

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 HIGH
CISA KEV No
Public POC No
EPSS 0.0%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
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
Scheduled
Exploitation
None
System Exposure· derived
Small
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

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

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

CVE-2025-1974 CRITICAL POC
9.8 Mar 25

A critical vulnerability in Kubernetes ingress-nginx controller allows unauthenticated attackers with pod network access

CVE-2026-45321 CRITICAL POC
9.6 May 12

Credential-harvesting malware compromised 84 versions of 42 TanStack npm packages on 2026-05-11 via chained GitHub Actio

CVE-2025-1098 HIGH POC
8.8 Mar 25

Kubernetes ingress-nginx contains a configuration injection vulnerability via the mirror-target and mirror-host Ingress

CVE-2025-24514 HIGH POC
8.8 Mar 25

A security issue was discovered in ingress-nginx https://github.com/kubernetes/ingress-nginx where the `auth-url` Ingres

CVE-2025-1097 HIGH POC
8.8 Mar 25

A security issue was discovered in ingress-nginx https://github.com/kubernetes/ingress-nginx where the `auth-tls-match-c

CVE-2020-8554 MEDIUM POC
6.3 Jan 21

Kubernetes API server in all versions allow an attacker who is able to create a ClusterIP service and set the spec.exter

CVE-2023-3676 HIGH POC
8.8 Oct 31

A security issue was discovered in Kubernetes where a user that can create pods on Windows nodes may be able to escalate

CVE-2025-55190 CRITICAL POC
9.9 Sep 04

Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes. Rated critical severity (CVSS 9.9), this vulne

CVE-2026-34976 CRITICAL POC
10.0 Apr 02

Unauthenticated remote attackers can trigger complete database overwrites, server-side file reads, and SSRF attacks agai

CVE-2018-18843 CRITICAL POC
10.0 Dec 04

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

CVE-2026-54680 CRITICAL POC
9.9 Jul 29

Fluentd configuration injection in the kube-logging Logging operator before 6.6.0 allows a namespace-scoped user who can

CVE-2025-64709 CRITICAL POC
9.9 Nov 13

Authenticated Typebot users can abuse the webhook block (HTTP Request component) in versions prior to 3.13.1 to issue ar

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