Apache Airflow allows code execution through unsafe serialized DAG deserialization
A bug in `BaseSerialization.deserialize()` allowed unrestricted `import_string()` of attacker-controlled class paths when the Scheduler / API Server loaded a serialized DAG: a DAG author could embed a malicious trigger into a DAG to gain remote code execution on the API Server / Scheduler process, crossing the Airflow security boundary that DAG-author code must never execute in those processes. Users are advised to upgrade to `apache-airflow` 3.3.0 or later. As a defense-in-depth mitigation, deployments where DAG-author trust is limited can restrict the `[core] allowed_deserialization_classes` config to a narrow allowlist.
describes (1)
Related CVEs.
| ID | severity | exploitable | ||
|---|---|---|---|---|
| CVE-2026-33264US | — | — | ||
A bug in `BaseSerialization.deserialize()` allowed unrestricted `import_string()` of attacker-controlled class paths when the Scheduler / API Server loaded a serialized DAG: a DAG… | ||||
references
External citations — patches, advisories, analysis.
- http://www.openwall.com/lists/oss-security/2026/07/07/1WEB
- https://github.com/apache/airflowPACKAGE
- https://github.com/apache/airflow/commit/69b6c54ef17b048ebb0e9a656d0d9e1c99480d6bWEB
- https://github.com/apache/airflow/commit/7e9bdb245e09373d91fcb7bda575ad4be63aa28dWEB
- https://github.com/apache/airflow/pull/66002WEB
- https://github.com/apache/airflow/pull/68528WEB
- https://github.com/pypa/advisory-database/tree/main/vulns/apache-airflow/PYSEC-2026-2082.yamlWEB
- https://lists.apache.org/thread/otvdw8qt2y7xy2n5nq9xby9ky4rf5ltjWEB
Advisories like this name the exposed products attackers go after on your perimeter. See what is exposed on your perimeter with a free passive scan.
Free scan