Critical

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

  • Disclosed: 07.07.2026
  • Updated: 11.10.2026 15:18

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.

Affected software

Click a technology to see all vulnerabilities affecting it.

PlatformPackageVulnerable versionsFixed in
Python (PyPI) apache-airflow < 3.3.0 3.3.0

References

CVSS score 9.8/10
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weakness (CWE)
CWE-502
Platform
Python (PyPI)
Package
apache-airflow
Disclosed
07.07.2026
Updated
11.10.2026 15:18

Sources and licenses

OSV / GitHub Advisory Database - GHSA-2943-9672-r45w - CC BY 4.0

OSV / GitHub Advisory Database - PYSEC-2026-2082 - PyPA Advisory Database; CC BY 4.0

Vulnerability history: apache-airflow

All published vulnerabilities of this package (Python (PyPI)), newest first. Shows whether this is a one-off slip or a package that needs watching.

All (158) in the archive
Total entries
158
First → latest
08.2018 09.2026
Without a fix
4
Exploited in attacks
2

Severity breakdown

  • Critical 16
  • High 49
  • Medium 86
  • Low 7

Disclosures per year

  1. 2018: 1
  2. 2019: 8
  3. 2020: 12
  4. 2021: 5
  5. 2022: 16
  6. 2023: 31
  7. 2024: 18
  8. 2025: 6
  9. 2026: 61
Severity:
  1. 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 this entry
    Critical · 9.8 CVE-2026-33264 < 3.3.0 3.3.0
  2. High · 7.3 CVE-2026-45360 >= 3.2.0, < 3.2.2 3.2.2
  3. High · 7.5 CVE-2026-31987 >= 3.0.0, < 3.2.0 3.2.0
  4. High · 8.1 CVE-2025-54550 < 3.2.0 3.2.0
  5. Critical · 9.1 CVE-2025-57735 >= 3.0.0, < 3.2.0 3.2.0
  6. High · 7.5 CVE-2025-68675 >= 3.0.0b1, < 3.1.6, < 2.11.1 3.1.6, 2.11.1
Show more (20) Showing 20 of 65

Know which vulnerabilities affect your application

With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.

Connect your application
DockRay newsletter

Application security in your inbox

Important vulnerabilities, actionable guidance and practical advice for your applications. Choose your technologies and follow what matters to your project.

  • A daily digest of new vulnerabilities, critical ones included.
  • Notifications about important updates.
  • Practical advice on application security and monitoring.

Leave empty to receive updates for every technology.

Free to subscribe. Unsubscribe with one click in any email.