CVE-2026-28563
Apache Airflow vulnerability analysis and mitigation

Overview

CVE-2026-28563 is a DAG authorization bypass vulnerability in Apache Airflow affecting versions 3.0.0 through 3.1.7. The /ui/dependencies endpoint returns the full DAG dependency graph without filtering by authorized DAG IDs, allowing an authenticated user with only the "DAG Dependencies" permission to enumerate DAGs they are not authorized to view. The vulnerability was discovered by Masamune of Unit515 OPSWAT and disclosed on March 17, 2026, with a fix released in Apache Airflow 3.1.8 (oss-security, Apache Airflow PR). It carries a CVSS v3.1 base score of 4.3 (Medium) (Feedly).

Technical details

The root cause is classified as CWE-732 (Incorrect Permission Assignment for Critical Resource). The /ui/dependencies API endpoint in Apache Airflow's FastAPI-based UI layer failed to apply DAG-level read authorization checks before returning the full DAG dependency graph, meaning any authenticated user holding the "DAG Dependencies" permission could query the endpoint and receive the complete graph regardless of their per-DAG access rights (oss-security). The fix, implemented in PR #62046, adds "readable DAGs" filtering to the dependencies endpoint so that only DAGs the requesting user is authorized to view are included in the response (Apache Airflow PR). Exploitation requires only a valid authenticated session with the DAG Dependencies permission — no elevated privileges or special conditions are needed.

Impact

Successful exploitation results in unauthorized information disclosure: an attacker with minimal Airflow permissions can enumerate the names and dependency relationships of all DAGs in the environment, including those they should not have visibility into. This exposes details about the Airflow workflow infrastructure, pipeline topology, and potentially sensitive operational configurations. While there is no direct impact on integrity or availability, the exposed DAG metadata could assist an attacker in identifying high-value targets for further privilege escalation or lateral movement within the Airflow environment (Feedly).

Exploitation steps

  1. Reconnaissance: Identify an Apache Airflow instance running version 3.0.0 through 3.1.7 (e.g., via version disclosure in the UI or HTTP headers).
  2. Obtain credentials: Acquire valid Airflow credentials for an account with at minimum the "DAG Dependencies" permission — this could be a low-privileged or shared account.
  3. Authenticate: Log in to the Airflow web UI or obtain a valid session token/API key.
  4. Query the vulnerable endpoint: Send an authenticated HTTP GET request to /ui/dependencies (e.g., GET /ui/dependencies HTTP/1.1 with a valid session cookie or Bearer token).
  5. Enumerate DAGs: Parse the returned JSON response, which contains the full DAG dependency graph including DAG IDs and relationships for all DAGs in the environment — including those the user is not authorized to access.
  6. Leverage disclosed information: Use the enumerated DAG names and topology to identify sensitive pipelines, understand data flows, or target specific DAGs for further attack (oss-security, Apache Airflow PR).

Indicators of compromise

  • Network: Repeated or automated HTTP GET requests to the /ui/dependencies endpoint from accounts with limited DAG permissions; requests to this endpoint from IP addresses not associated with normal administrative activity.
  • Logs: Airflow access logs showing requests to /ui/dependencies from users whose roles are restricted to "DAG Dependencies" permission only; unusual frequency of requests to this endpoint outside of normal operational hours.
  • Behavioral: A low-privileged user account querying the dependencies endpoint multiple times in a short period, potentially followed by access attempts to DAGs not normally associated with that user's role.

Mitigation and workarounds

The primary remediation is to upgrade Apache Airflow to version 3.1.8 or later, which includes the fix that filters the /ui/dependencies endpoint response by authorized DAG IDs (Apache Airflow PR, oss-security). As a temporary workaround for organizations unable to upgrade immediately, restrict access to the /ui/dependencies endpoint via network controls, a reverse proxy (e.g., deny access to this path for non-admin roles), or firewall rules. Additionally, audit Airflow role assignments to ensure the "DAG Dependencies" permission is granted only to users who require it, and review access logs for any historical exploitation of this endpoint.

Community reactions

The vulnerability was reported to the oss-security mailing list by Rahul Vats on behalf of the Apache Airflow project on March 17, 2026, crediting Masamune of Unit515 OPSWAT as the finder and Shubham Raj as the remediation developer (oss-security). The severity was rated "low" by the Apache project. No significant broader media coverage or notable researcher commentary beyond the standard disclosure channels has been observed for this vulnerability.

Additional resources


SourceThis report was generated using AI

Related Apache Airflow vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-33264CRITICAL9.8
  • Apache Airflow logoApache Airflow
  • apache-airflow
NoYesJul 07, 2026
CVE-2026-49487MEDIUM6.5
  • Apache Airflow logoApache Airflow
  • airflow
NoYesJul 07, 2026
CVE-2026-49296MEDIUM6.5
  • Apache Airflow logoApache Airflow
  • apache-airflow
NoYesJul 07, 2026
CVE-2026-48892MEDIUM6.5
  • Apache Airflow logoApache Airflow
  • apache-airflow
NoYesJul 07, 2026
CVE-2026-48891MEDIUM4.3
  • Apache Airflow logoApache Airflow
  • apache-airflow
NoYesJul 07, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management