Skip to main content

Apache Airflow CVE-2026-40913

MEDIUM
2026-11-09
View

Attack ChainAIDerived

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

  1. Access
    Authenticate with ImportError.can_read grant
  2. Exploit
    Call public Import Errors API
  3. Execution
    Receive raw parse-failure stack trace
  4. Impact
    Harvest leaked file paths and code

Vulnerability Assessment

Exploitation Conditions

Requires an authenticated Airflow account holding the ImportError.can_read permission on a deployment running a version before 3.4.0. The disclosure triggers only for a failing file that has no currently registered DAG - specifically when the file fails to parse before any DAG is defined, or when all of its previously registered DAGs have been removed while the parse error remains; files that still have a registered DAG are correctly scoped. Exploitation is limited to reading confidential data (file paths and code in stack traces) and is bounded by the existing RBAC grant, so it is primarily an internal privilege-boundary/multi-tenant concern rather than anonymous remote access.

Impact

This is a low-severity information-disclosure issue in Apache Airflow's public Import Errors API, and the available signals are consistent in pointing to low real-world urgency rather than an emergency. No CVSS vector was supplied by NVD or the vendor (CVSS: N/A), there is no EPSS score, the flaw is not in CISA KEV, and no public exploit code or PoC reference is present - the only code reference is the remediation pull request (apache/airflow#69790), not an exploit. The vuln.today decision label is 'awaiting_data', meaning no priority-elevating signal has been established. Exploitation is gated behind an authenticated account that already holds the ImportError.can_read permission, so this is a privilege-boundary leak between internal users rather than an externally reachable flaw: a user who can read import errors sees raw parse stack traces (file paths and code) for files they should not have visibility into. The practical impact is limited to confidentiality of source-file paths and code snippets, with no integrity or availability effect. Net: a genuine but low-priority hardening fix, not a high-CVSS-but-low-risk inflation case nor an active-exploitation emergency. Missing data to note explicitly: no official CVSS vector exists, so severity rests on the vendor's 'low' rating and the description alone; verify against the Apache advisory if a precise score is required.

Exploit ScenarioDerived

An authenticated Airflow user who has been granted the ImportError.can_read permission (for example a limited operator in a multi-tenant deployment) queries the public Import Errors API. For a file that failed to parse before any DAG was registered - or whose DAGs were all removed while the parse error persisted - the API returns the raw stack trace, disclosing file paths and source code the user was not authorized to see. No public exploit code or PoC is identified at time of analysis.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet

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

Alert me

AnalysisAIv1 – Nov 09, 2026

Information disclosure in Apache Airflow before 3.4.0 allows an authenticated user holding the ImportError.can_read permission to read raw parse-failure stack traces for DAG files that have no currently registered DAG, exposing file paths and code fragments beyond that user's intended per-file scope. Files that still have a registered DAG are correctly scoped, so the leak is bounded by an existing RBAC grant and is chiefly an internal privilege-boundary and multi-tenant concern rather than anonymous remote access. No public exploit was identified at the time of analysis and the issue is not in CISA KEV; independent assessment rates it low severity (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N), with the vendor-released fix in 3.4.0.

RemediationAI

Upgrade to Apache Airflow 3.4.0 or later, which restricts import-error stack traces to holders of the new IMPORT_ERRORS_ALL permission; the change is implemented in upstream pull request https://github.com/apache/airflow/pull/69790, with advisory references at https://airflow.apache.org/ and https://seclists.org/oss-sec/2026/q4/583. After upgrading, review role grants and assign IMPORT_ERRORS_ALL only to users who genuinely need raw import-error output, since users who previously relied on ImportError.can_read alone will no longer see these traces. No separate workaround is documented in the supplied sources; the vendor-released fix is version 3.4.0.

Affected ProductsAI

Apache Airflow versions before 3.4.0 are affected; no CPE identifiers were supplied with the data. Exposure requires a deployment in which users are granted ImportError.can_read, and the leak only manifests for failing DAG files that have no currently registered DAG - files that still own a registered DAG are scoped correctly. Apache Airflow 3.4.0 addresses the issue, per the upstream pull request at https://github.com/apache/airflow/pull/69790 and the project site at https://airflow.apache.org/, with the release announcement describing the 3.4.0 feature set.

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

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

Technical ContextAI · show details

The flaw sits in Airflow's Import Errors API, the surface that exposes DAG-file parse failures. Airflow's RBAC model intends per-file scoping of import-error records, but enforcement is incomplete: when a failing file has no registered DAG - because it failed to parse before any DAG was defined, or because all of its previously registered DAGs were removed while the parse error remained - the raw stack trace is returned to anyone with ImportError.can_read instead of being restricted to those entitled to that file. Stack traces of this kind can carry filesystem paths and fragments of the file's code. No CWE identifier is assigned in the supplied data; the class is a permission-scoping information-disclosure defect, not memory corruption. The 3.4.0 fix adds a distinct IMPORT_ERRORS_ALL permission that gates access to these stack traces, and the upstream change is carried in pull request 69790.

Know when the next one hits your stack

  • 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

vuln.today AI 4.3 MEDIUM

Network-reachable API (AV:N) usable by any user with the ImportError.can_read grant (PR:L, AC:L, no UI); limited confidentiality disclosure of file paths and code only, no integrity or availability impact.

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

Estimated by vuln.today — no official severity rating has been published for this CVE yet.

Description PRE-NVD

Disclosed via oss-security. NVD scoring and full description are pending.

Threat Intelligence Overview

Prevalence
High
Apache Airflow is a widely deployed enterprise data-orchestration platform
Data Quality
1 sources
Confidence: Low

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 MEDIUM
CISA KEV No
Public POC No
EPSS N/A
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.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.

Attack Technique

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

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