GitHub Advisoryadvisory · PyPI
GHSA-2r5m-76wx-56gx Apache Airflow Vulnerable to Deserialization of Untrusted Data
HIGH
Official page ↗
- Aliases
- CVE-2026-45360
- Ecosystem
- PyPI
- Packages
- apache-airflow
- Severity
- High
- CVSS vector
- CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
- Weaknesses
- CWE-502
- Reviewed
- 2026-07-09
Affected packages
• PyPI apache-airflow: >= 3.2.0, < 3.2.2 → fixed in 3.2.2
Description
Apache Airflow's scheduler-side deadline-reference decoder (`SerializedCustomReference.deserialize_reference`) imported and dispatched arbitrary class paths drawn from DAG-author-controlled serialized state without an allowlist or plugin-registry gate. A DAG author whose code reaches the scheduler — the default on single-host deployments where the DAG bundle is importable from the scheduler process — could embed a custom `DeadlineReference` whose serialized form named an attacker-controlled module path, causing the scheduler to `import_string(...)` and instantiate that class with a live SQLAlchemy session attached. Affects deployments where DAG-author code is less trusted than the scheduler process. Users are advised to upgrade to `apache-airflow` 3.2.2 or later.
Related
Alias · CVE (1)
- CVE-2026-45360 Apache Airflow's scheduler-side deadline-reference decoder (`SerializedCustomReference.deserialize_reference`) imported and dispatched… vulnerability
Weakness · CWE (1)
- CWE-502 Deserialization of Untrusted Data weakness
References
- https://nvd.nist.gov/vuln/detail/CVE-2026-45360 advisory
- https://github.com/apache/airflow/pull/61461 web
- https://github.com/apache/airflow/pull/66737 web
- https://github.com/apache/airflow package
- https://github.com/pypa/advisory-database/tree/main/vulns/apache-airflow/PYSEC-2026-186.yaml web
- https://lists.apache.org/thread/q227dghjwgfz8xsxrf2pwpz4wk43zm83 web
- http://www.openwall.com/lists/oss-security/2026/05/31/12 web