CVE-2026-68971 PUBLISHED

Apache Airflow: Cross-team authorization bypass in the asset materialization and dag-run result endpoints

Assigner: apache
Reserved: 01.08.2026 Published: 12.08.2026 Updated: 12.08.2026

Apache Airflow's asset materialization endpoint (POST /api/v2/assets/{asset_id}/materialize) and the XCom result check on wait_dag_run_until_finished authorized the target Dag without its team, unlike every other authorization site. A team-aware auth manager distinguishes a team-scoped Dag from a global one by that field -- the Keycloak auth manager, for example, checks the DAG resource instead of DAG:<team> -- so the team-scoped permission that should gate the request was never consulted. In a deployment running multi-team mode with a team-aware auth manager, an authenticated user in one team could trigger Dag runs belonging to another team, supplying their own dag_run_id and conf, and could read another team's XCom values. Deployments using the FAB auth manager are unaffected, as it has no multi-team support. Users are advised to upgrade to apache-airflow 3.3.1 or later, which resolves the Dag's team at both sites.

Product Status

Vendor Apache Software Foundation
Product Apache Airflow
Versions Default: unaffected
  • affected from 0 to 3.3.1 (excl.)

Credits

  • @haoxucu finder
  • Jarek Potiuk remediation developer

References

Problem Types

  • CWE-862: Missing Authorization CWE