Skip to main content
CVE-2026-96285VulnerabilityPublished

Apache Airflow 3.3.1 shipped a fix for CVE-2026-67260 that checks the scheduler's decoded next_kwargs value is a

Source GCVE Database

0
Compare

Mentioned vulnerabilities

Authoritative record:CVE-2026-96285· High

Not known to be exploited : upgrade to 3.4.0 soon.

Data as of 9 Nov 2026, 13:18 UTC

Severity
High

Rated High by Threat Radar's AI analysis · CVSS not yet scored by NVD

Thin evidence

One scorer or none
Patch
Available – fixed in 3.4.0

Exploitation evidence

  1. Disclosed: evidence found.

    CVE published 9 Nov 2026

  2. Detectable: no evidence on record.

    No public nuclei template indexed

  3. Weaponized: no evidence on record.

    No public exploit code indexed in Metasploit or Exploit-DB

  4. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  5. Observed by OffSeq Mirage: no evidence on record.

    No attack traffic recorded by OffSeq Mirage sensors

A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 9 Nov 2026.

What to do

Upgrade Apache Airflow and apache-airflow-core to 3.4.0.

Affected software

ProductAffectedFixed in
Apache Airflowapache-airflow-coreAffected
  • >=3.3.0 <3.4.0
Fixed in
  • 3.4.0
PyPIapache-airflow-corepkg:pypi/apache-airflow-coreOther threatsAffected
  • >=3.3.0 <3.4.0
Fixed in
  • 3.4.0

Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.

AI-suggested

Deployments should upgrade to Apache Airflow version 3.4.0 or later to fully address CVE-2026-96285. The partial fix in version 3.3.1 is insufficient and does not prevent constructor execution during deserialization. No other mitigations or configuration changes are indicated.

Description

Apache Airflow versions before 3.3.0 are not affected by CVE-2026-96285. Version 3.3.1 includes a partial fix that checks the scheduler's decoded next_kwargs value is a dictionary only after deserializing the entire stored payload. This deserialization process reconstructs nested objects and runs their constructors before the check, allowing a DAG author to trigger constructor execution in the scheduler and API server without non-default configuration. The fix in 3.3.1 is incomplete; deployments must upgrade to version 3.4.0 or later for a complete resolution.

References

Community reviews

Loading reviews…