# CVE-2026-68968: Apache Airflow Backfill API authorization bypass via type coercion mismatch

Source: https://junglewise.ai/threats/cve-2026-68968-apache-airflow-backfill-api-authorization-bypass-via-type  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-08-12. Updated: 2026-09-25  
License: CC BY 4.0 with a link back

CVE-2026-68968 · Severity: high · CVSS 7.5 · Published 2026-08-12

Apache Airflow's Backfill API has an authorization flaw where the system checks permissions using a different data type parser than the actual request handler. An authenticated user with edit permission on any single Directed Acyclic Graph (DAG) can exploit this to read, pause, cancel, or move backfills belonging to other DAGs without proper authorization. The flaw allows attackers to manipulate DAG run states across the entire system.

Technologies: [Apache Airflow](https://junglewise.ai/threats/technologies/airflow), [apache-airflow (PyPI)](https://junglewise.ai/threats/technologies/apache-airflow). Vendors: [Apache](https://junglewise.ai/threats/vendors/apache), [PyPI](https://junglewise.ai/threats/vendors/pypi).

## Quick answers

**Is CVE-2026-68968 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-68968 being exploited in the wild.

**How severe is CVE-2026-68968?** High severity, with a CVSS score of 7.5, published 12 August 2026.

**Which products and versions are affected?** Apache Airflow before 3.3.1; apache-airflow (PyPI) < 3.3.1, ECOSYSTEM:introduced=0,fixed=3.3.1.

**Is there a fix for CVE-2026-68968?** Yes. apache-airflow (PyPI): upgrade to 3.3.1 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-68968 attacked?** It is attacked over the network.

**Am I affected by CVE-2026-68968?** Check whether you run Apache Airflow or apache-airflow (PyPI) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- apache-airflow (PyPI): upgrade to 3.3.1 or later

  ```sh
  pip install "apache-airflow>=3.3.1"
  ```


## Technical details

The vulnerability stems from a type-parsing mismatch in FastAPI's dependency injection. The authorization dependency uses Python's `int()` to parse the `backfill_id` path parameter, while the route handler uses Pydantic's `NonNegativeInt` (in lax mode). Pydantic's lax parser accepts decimal spellings like "42.0" and coerces them to integers, whereas `int()` raises ValueError for these inputs. Because FastAPI resolves dependencies before endpoint validation, mismatched backfill IDs cause the authorization check to evaluate one DAG while the handler processes a different one. An authenticated user can supply decimal-formatted IDs (e.g., `/backfills/42.0`) to bypass intended access controls. The fix (Apache Airflow 3.3.1+) uses the same `TypeAdapter(NonNegativeInt)` parser in both the dependency and handler, eliminating the divergence.

## Affected products

- Apache Airflow before 3.3.1

## Identifiers

- CVE-2026-68968
- BIT-AIRFLOW-2026-68968
- GHSA-j4jc-cq9h-xrhr
- PYSEC-2026-3710

## Timeline

- 2026-08-12: disclosed: CVE-2026-68968 published
- 2026-08-04: patched: Fix merged in apache/airflow PR #70889
- 2026: other: Apache Airflow 3.3.1 released with patch

## References

- [https://pypi.python.org/](https://pypi.python.org/)
- [https://github.com/apache/airflow/pull/70889](https://github.com/apache/airflow/pull/70889)

## Related threats

- [Apache Airflow incomplete deserialization check bypass in scheduler](https://junglewise.ai/threats/cve-2026-96285-apache-airflow-3-3-1-shipped-a-fix-for-that-checks-the-scheduler)
- [Apache Airflow scheduler XCom deserialization privilege escalation](https://junglewise.ai/threats/cve-2026-86829-apache-airflow-s-scheduler-fully-deserializes-xcom-values-written)
- [Apache Airflow CLI audit log secrets exposure](https://junglewise.ai/threats/cve-2026-86468-apache-airflow-s-cli-records-its-arguments-in-the-audit-log-but)
- [Apache Airflow unsafe deserialization in deadline alert fields](https://junglewise.ai/threats/cve-2026-82337-apache-airflow-rebuilt-deadline-alert-fields-through-generic)
- [Apache Airflow Task SDK secret cache key collision in multi-team deployments](https://junglewise.ai/threats/cve-2026-76185-apache-airflow-s-task-sdk-secret-cache-built-its-keys-from-the)
