CVE Wiki Pixee · CVE intelligence
← All CVEs

CVE-2026-33264

Critical · CVSS 9.8

apache-airflow — Insecure Deserialization RCE (CWE-502) via unrestricted import_string() in BaseSerialization.deserialize()

CVSS
9.8
nvd
EPSS
KEV
No
Class
oss containerizable
CWE-502

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.

Search profile — drives PoC discovery

Symbols BaseSerialization.deserializeimport_stringallowed_deserialization_classes[core] allowed_deserialization_classesBaseSerializationDAG serializationScheduler deserializationAPI Server deserialization
Keywords CVE-2026-33264apache airflow deserialization RCEairflow BaseSerialization deserialize exploitairflow import_string DAG RCEairflow allowed_deserialization_classes bypassairflow DAG author RCE schedulerairflow serialized DAG remote code executionairflow 3.3.0 deserialization fixairflow malicious trigger DAGairflow security boundary bypass
Versions: < 3.3.0

References

Status: enriched · ingested 2026-07-09T00:00:39.000Z · profiled 2026-07-09T00:30:39.000Z