Skip to main content

Apache Airflow CVE-2026-48891

| EUVDEUVD-2026-42025 MEDIUM
Information Exposure (CWE-200)
2026-07-07 apache GHSA-3322-mjxh-9mp5
4.3
CVSS 3.1 · Vendor: apache
Share

Severity by source

Vendor (apache) PRIMARY
4.3 LOW
AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
vuln.today AI
4.3 MEDIUM

Network-accessible endpoint requires authenticated partial DAG read access (PR:L); impact is confined to DAG identifier disclosure only (C:L), with no integrity or availability effect.

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

Primary rating from Vendor (apache).

CVSS VectorVendor: apache

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
None
Availability
None

Lifecycle Timeline

2
CVSS changed
Jul 07, 2026 - 14:22 NVD
4.3 (MEDIUM)
Analysis Generated
Jul 07, 2026 - 10:40 vuln.today

Blast Radius

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

Ecosystem-wide dependent count for version 3.3.0.

DescriptionCVE.org

A bug in Apache Airflow's /ui/dependencies scheduling graph endpoint applied the caller's readable-Dag filter to the top-level serialized Dag key but still emitted referenced Dag IDs through the dep.source and dep.target fields of trigger / sensor dependency entries. An authenticated UI user with read permission on some Dags could enumerate the identifiers of other Dags they were not authorized to read by inspecting the dependency graph for trigger / sensor references. Affects deployments that rely on per-Dag read scoping to keep Dag identifiers private across teams. This is a residual gap in the fix for CVE-2026-28563, which filtered the top-level Dag key but did not propagate the filter into the trigger / sensor dep-source / dep-target fields. Users who already upgraded for CVE-2026-28563 should additionally upgrade to apache-airflow 3.3.0 or later to cover the residual trigger / sensor dependency leak.

AnalysisAI

Incomplete authorization filtering in Apache Airflow's /ui/dependencies scheduling graph endpoint exposes restricted DAG identifiers to authenticated users who lack read permission on those DAGs. The endpoint correctly filters top-level serialized DAG keys against the caller's ACL but leaks referenced DAG IDs through dep.source and dep.target fields of trigger and sensor dependency entries, enabling cross-team DAG enumeration in multi-tenant deployments. This is a residual gap from an incomplete fix for CVE-2026-28563; no public exploit has been identified at time of analysis, and a vendor patch is available in apache-airflow 3.3.0.

Technical ContextAI

Apache Airflow's web UI exposes a /ui/dependencies endpoint that renders the scheduling dependency graph, including trigger and sensor inter-DAG relationships serialized as dependency objects with dep.source and dep.target fields. The fix for CVE-2026-28563 applied per-DAG read ACL filtering to the top-level DAG key in the serialized response but did not propagate that filter into the dep-object fields, creating a filter bypass at the nested dependency layer. CWE-200 (Exposure of Sensitive Information to an Unauthorized Actor) describes this root cause class precisely: an authorization control is present and partially applied but does not cover all code paths through which restricted data flows. The affected product is identified by CPE cpe:2.3:a:apache_software_foundation:apache_airflow:*:*:*:*:*:*:*:* across all versions prior to 3.3.0. Airflow's DAG-level RBAC scoping, intended to isolate teams within shared Airflow deployments, is the security boundary being bypassed.

RemediationAI

Upgrade to apache-airflow 3.3.0 or later, which extends the CVE-2026-28563 filter to cover dep.source and dep.target fields in trigger and sensor dependency entries. The upstream fix is merged in GitHub PR https://github.com/apache/airflow/pull/67627. For deployments unable to upgrade immediately, a targeted compensating control is to restrict access to the /ui/dependencies endpoint at the reverse proxy layer (e.g., Nginx deny directive or Apache Require directive scoped to privileged roles only); this disables the dependency graph UI for all users and may impact operational visibility. A lower-impact alternative is to audit DAG naming conventions and remove sensitive information from DAG identifiers themselves, which reduces the value of enumeration without disrupting UI functionality. Vendor advisory: https://lists.apache.org/thread/wzc8nflg94rq6w8f5tvtlo0o3g4wjrfl.

CVE-2026-33264 CRITICAL
9.8 Jul 07

Remote code execution in Apache Airflow before 3.3.0 lets a DAG author embed a malicious trigger whose attacker-controll

CVE-2026-67587 HIGH
8.8 Aug 12

Unsafe deserialization in Apache Airflow 3.3.0's Task SDK allows an authenticated DAG author to cause arbitrary module i

CVE-2026-58076 HIGH
8.8 Aug 12

Unsafe deserialization in Apache Airflow 3.0.0 through 3.3.0 allows any DAG author to achieve arbitrary code execution i

CVE-2026-33858 HIGH
8.8 Apr 13

Remote code execution in Apache Airflow 3.1.x allows authenticated DAG Authors to execute arbitrary code in the webserve

CVE-2026-30898 HIGH
8.8 Apr 18

Command injection in Apache Airflow's BashOperator documentation example allows authenticated attackers to escalate priv

CVE-2025-54550 HIGH
8.1 Apr 15

We need to produce a JSON object per the instructions. Let's analyze each field. First, product_name: "1-3 words ONLY.

CVE-2026-30911 HIGH
8.1 Mar 17

CVE-2026-30911 is a security vulnerability (CVSS 8.1) that allows any authenticated task instance. High severity vulnera

CVE-2025-66236 HIGH
7.5 Apr 13

Information disclosure in Apache Airflow 3.0.0 through 3.1.x stems from incomplete secret masking and under-documented w

CVE-2026-31987 HIGH
7.5 Apr 16

Apache Airflow 3.0.0 through 3.1.x exposes JWT authentication tokens in application logs, allowing any authenticated UI

CVE-2026-28779 HIGH
7.5 Mar 17

CVE-2026-28779 is a security vulnerability (CVSS 7.5) that allows any application co-hosted under the same domain. High

CVE-2026-30912 HIGH
7.5 Apr 18

Apache Airflow before 3.2.0 exposes SQL exception stack traces through API responses despite api/expose_stack_traces=fal

CVE-2026-32228 HIGH
7.5 Apr 18

Apache Airflow 3.0.x prior to 3.2.0 allows remote unauthenticated attackers to trigger unauthorized DAG (Directed Acycli

Share

CVE-2026-48891 vulnerability details – vuln.today

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