Skip to main content

Apache Airflow EUVDEUVD-2026-33598

| CVE-2026-40861 MEDIUM
Improper Link Resolution Before File Access (CWE-59)
6.5
CVSS 3.1 · NVD
Share

Severity by source

NVD PRIMARY
6.5 MEDIUM
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N

Primary rating from NVD · only source for this CVE.

CVSS VectorNVD

CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
None
Availability
None

Lifecycle Timeline

6
Source Code Evidence Fetched
Jun 02, 2026 - 17:26 vuln.today
Analysis Generated
Jun 02, 2026 - 17:26 vuln.today
CVSS changed
Jun 02, 2026 - 17:22 NVD
6.5 (MEDIUM)
Patch available
Jun 01, 2026 - 10:01 EUVD
CVE Published
May 31, 2026 - 12:45 nvd
MEDIUM 6.5
CVE Published
May 31, 2026 - 12:45 nvd
UNKNOWN (no severity yet)

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 8 pypi packages depend on apache-airflow (4 direct, 4 indirect)

Ecosystem-wide dependent count for version 3.2.2.

Description PRE-NVD

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

AnalysisAI

Arbitrary file read in Apache Airflow's FileTaskHandler allows authenticated users to read files outside the designated log directory by placing symlinks within the log folder tree. Versions prior to 3.2.2 are affected. Because FileTaskHandler._read_from_local() resolved glob matches without first verifying that a symlink's real path stays within the configured base log folder, a low-privileged Airflow user could exfiltrate sensitive server-side files - credentials, keys, or configuration - by directing log reads through a crafted symlink. No public exploit code exists and the vulnerability is not in CISA KEV, though the CVSS C:H rating reflects genuine confidentiality risk.

Technical ContextAI

Apache Airflow's FileTaskHandler (airflow-core/src/airflow/utils/log/file_task_handler.py) is responsible for writing and reading task execution logs to a configured base_log_folder on disk. The _read_from_local() method uses a glob pattern to discover log files associated with a task instance and opens each matching path directly. Prior to 3.2.2, the code called open(path) on raw glob results without resolving symlinks or validating path containment, a classic CWE-59 (Improper Link Resolution Before File Access - 'Link Following') defect. An attacker-controlled symlink matching the glob pattern (e.g., '1.log.external') inside a log subdirectory could point anywhere on the filesystem. The fix in PR #65325 introduces os.path.realpath() on both the base log folder and each glob hit, then uses os.path.commonpath() to enforce containment - rejecting any resolved path whose canonical form does not begin with the canonical base_log_folder. The affected CPE range is Apache Airflow 0 through < 3.2.2 per EUVD-2026-33598.

RemediationAI

Upgrade Apache Airflow to version 3.2.2 or later, which contains the upstream fix from PR #65325 (https://github.com/apache/airflow/pull/65325). The fix is a path-containment enforcement change in FileTaskHandler._read_from_local() requiring no configuration changes post-upgrade. If an immediate upgrade is not feasible, restrict the ability of non-administrative Airflow users to write files or create symlinks within the Airflow log directory (base_log_folder) at the filesystem level using OS permissions (e.g., chmod 755 on log parent directories, ensuring only the airflow service account can write). This compensating control eliminates the attacker's ability to plant the malicious symlink, though it trades off against DAG-authored log customisation features. Alternatively, switching to a remote log backend (S3, GCS, Azure Blob) removes the local FileTaskHandler entirely and eliminates this vulnerability surface. Vendor advisory thread: https://lists.apache.org/thread/823334db2559xjlwt59gpzjz47thnscl.

CVE-2017-1000117 HIGH POC
8.8 Oct 05

A malicious third-party can give a crafted "ssh://..." URL to an unsuspecting victim, and an attempt to visit the URL ca

CVE-2024-52875 HIGH POC
8.8 Jan 31

GFI Kerio Control versions 9.2.5 through 9.4.5 contain an HTTP response splitting vulnerability in the dest parameter of

CVE-2016-5385 HIGH POC
8.1 Jul 19

PHP through 7.0.8 does not attempt to address RFC 3875 section 4.1.18 namespace conflicts and therefore does not protect

CVE-2013-2248 MEDIUM POC
5.8 Jul 20

Multiple open redirect vulnerabilities in Apache Struts 2.0.0 through 2.3.15 allow remote attackers to redirect users to

CVE-2012-6499 MEDIUM POC
5.8 Jan 12

Open redirect vulnerability in age-verification.php in the Age Verification plugin 0.4 and earlier for WordPress allows

CVE-2015-2863 MEDIUM POC
4.3 Jul 20

Open redirect vulnerability in Kaseya Virtual System Administrator (VSA) 7.x before 7.0.0.29, 8.x before 8.0.0.18, 9.0 b

CVE-2017-3528 MEDIUM POC
5.4 Apr 24

Vulnerability in the Oracle Applications Framework component of Oracle E-Business Suite (subcomponent: Popup windows (li

CVE-2012-0518 MEDIUM
4.7 Oct 16

Unspecified vulnerability in the Oracle Application Server Single Sign-On component in Oracle Fusion Middleware 10.1.4.3

CVE-2024-21641 MEDIUM POC
6.5 Jan 05

Flarum is open source discussion platform software. Rated medium severity (CVSS 6.5), this vulnerability is remotely exp

CVE-2015-5354 MEDIUM POC
5.8 Jul 01

Open redirect vulnerability in Novius OS 5.0.1 (Elche) allows remote attackers to redirect users to arbitrary web sites

CVE-2015-5461 MEDIUM POC
6.4 Jul 08

Open redirect vulnerability in the Redirect function in stageshow_redirect.php in the StageShow plugin before 5.0.9 for

CVE-2024-22891 CRITICAL POC
9.8 Mar 01

Nteract v.0.28.0 was discovered to contain a remote code execution (RCE) vulnerability via the Markdown link. Rated crit

Share

EUVD-2026-33598 vulnerability details – vuln.today

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