CVE-2026-48891 json
Apache Airflow: /ui/dependencies scheduling graph leaks unreadable Dag identifiers via trigger/sensor dep.source/dep.target
published 2026-07-07 4 mo ago modified 2026-11-03 6 d ago also BIT-airflow-2026-48891 , EUVD-2026-42025 , GHSA-3322-mjxh-9mp5 , PYSEC-2026-2086
- cvss
- 4.3
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.6%
- EPSS 0.6% chance of exploitation in 30 days, percentile 50%
- public exploits
- 0
- none known
Summary
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.
Patch / fix
- pypi apache-airflow 3.3.0
- bitnami airflow 3.3.0
- Apache Software Foundation Apache Airflow 3.0.0, 3.3.0
- github.com/apache/airflow@e61c9ba commit
- github.com/apache/airflow#67627 pull request
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- 4 mo ago
Exploit prediction
0.64% chance of exploitation in the next 30 days, higher than 50% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CISA ADP | 3.1 | 4.3 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N |
| GitHub | 3.1 | 4.3 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N |
| CNA | 3.1 | 4.3 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N |
| OSV | 3.1 | 4.3 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | apache-airflow | <3.3.0 |
3.3.0 |
| bitnami | airflow | <3.3.0 |
3.3.0 |
Affected products
- Apache Software Foundation Apache Airflow
Classification
- Weakness
-
- CWE-200 Exposure of Sensitive Information to an Unauthorized Actor
References
-
github.com
/apache/airflow/pull/67627
patch, web, issue-tracking, report
-
github.com
/apache/airflow/commit/e61c9bac30a7b1a7f68589629f10c4cb247c683e
web
-
lists.apache.org
/thread/wzc8nflg94rq6w8f5tvtlo0o3g4wjrfl
vendor-advisory, web, advisory
-
cve.org
/CVERecord?id=CVE-2026-28563
related, web, third-party-advisory, advisory
-
nvd.nist.gov
/vuln/detail/CVE-2026-48891
advisory, web
-
github.com
/apache/airflow
package
-
github.com
/pypa/advisory-database/tree/main/vulns/apache-airflow/PYSEC-2026-2086.yaml
web
-
github.com
/advisories/GHSA-3322-mjxh-9mp5
advisory
Sources
- CVE List CVE-2026-48891
- GitHub Advisory GHSA-3322-mjxh-9mp5
- NVD CVE-2026-48891
- OSV BIT-airflow-2026-48891
- OSV PYSEC-2026-2086
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.