GitHub Advisoryadvisory · PyPI

GHSA-2943-9672-r45w Apache Airflow allows code execution through unsafe serialized DAG deserialization

CRITICAL Published 2026-07-07 Modified 2026-09-04 Official page ↗
Aliases
CVE-2026-33264
Ecosystem
PyPI
Packages
apache-airflow
Severity
Critical
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weaknesses
CWE-502
Reviewed
2026-09-04

Affected packages

• PyPI apache-airflow: < 3.3.0 → fixed in 3.3.0

Description

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.

Related

Alias · CVE (1)

  • CVE-2026-33264 A bug in `BaseSerialization.deserialize()` allowed unrestricted `import_string()` of attacker-controlled class paths when the Scheduler /… vulnerability

Weakness · CWE (1)

  • CWE-502 Deserialization of Untrusted Data weakness

References