GHSA-wr76-29cr-67w8
Severity by source
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Primary rating from Vendor (CNA) · only source for this CVE.
CVSS VectorVendor
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Lifecycle Timeline
6Blast Radius
ecosystem impact- 10 pypi packages depend on apache-airflow (1 direct, 9 indirect)
Ecosystem-wide dependent count for version 3.2.0.
Description PRE-NVD
AnalysisAI
Authenticated remote code execution in Apache Airflow 3.2.0 through 3.2.1 allows users with permission to update XCom entries to achieve code execution by submitting reserved deserialization metadata keys (e.g. __classname__, __type, __data__, __var) to the PATCH XCom endpoint. The XComUpdateBody datamodel omitted the FORBIDDEN_XCOM_KEYS validator that XComCreateBody enforced, letting attackers smuggle a malicious typed payload that is later deserialized into an arbitrary Python class. No public exploit identified at time of analysis and EPSS risk is negligible (0.02%), but a vendor fix has shipped and the root cause is a classic CWE-502 untrusted deserialization.
Technical ContextAI
Apache Airflow's REST API exposes XCom (cross-communication) entries used to pass data between task instances. Airflow serializes complex Python objects into XCom using metadata keys such as __classname__, __type, __var, and __data__, and on read it reconstructs the original object via its serialization framework. The fix in PR apache/airflow#65915 factors the recursive _check_forbidden_xcom_keys helper out of XComCreateBody and adds an equivalent @field_validator to XComUpdateBody so that PATCH requests are also walked recursively and rejected (HTTP 422) when any forbidden key is present at any nesting depth. The root cause is CWE-502 Deserialization of Untrusted Data: the create-path was hardened, but the update-path was not, leaving a gap where attacker-controlled type metadata reached the deserializer and could instantiate arbitrary registered classes such as airflow.sdk.definitions.connection.Connection or other gadgets.
RemediationAI
Vendor-released patch: upgrade Apache Airflow to 3.2.2 or later, which adds the FORBIDDEN_XCOM_KEYS field validator to XComUpdateBody as shown in apache/airflow PR #65915 (https://github.com/apache/airflow/pull/65915); consult the ASF advisory at https://lists.apache.org/thread/g8dqykpf1p90tysq8tln4qtkqwb1038s. If immediate upgrade is not possible, restrict who holds the 'can_edit' permission on XCom resources in Airflow's RBAC so that only highly-trusted operators can call the PATCH /dags/{dag_id}/dagRuns/{run_id}/taskInstances/{task_id}/xcomEntries/{key} endpoint, and block access to that route at a reverse proxy or WAF for any non-admin principals - the trade-off is that legitimate workflows that update XCom via the REST API will break. Network-isolating the Airflow webserver/API behind authenticated VPN or SSO further reduces exposure but does not address the authenticated-attacker threat model. Audit existing XCom entries for unexpected __classname__, __type, __var, or __data__ keys to detect prior tampering.
The previous default setting for Airflow's Experimental API was to allow all API requests without authentication, but th
An issue was found in Apache Airflow versions 1.10.10 and below. Rated high severity (CVSS 8.8), this vulnerability is r
The variable import endpoint was not protected by authentication in Airflow >=2.0.0, <2.1.3. Rated critical severity (CV
An issue was found in Apache Airflow versions 1.10.10 and below. Rated critical severity (CVSS 9.8), this vulnerability
A vulnerability in Example Dags of Apache Airflow allows an attacker with UI access who can trigger DAGs, to execute arb
In Apache Airflow, prior to version 2.2.4, some example DAGs did not properly sanitize user-provided params, making them
Incorrect Session Validation in Apache Airflow Webserver versions prior to 1.10.14 with default config allows a maliciou
Privilege Context Switching Error vulnerability in Apache Software Foundation Apache Airflow.6.0. Rated critical severit
Improper Neutralization of Special Elements used in a Command ('Command Injection') vulnerability in Apache Software Fou
Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection') vulnerability in Apache Airfl
Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection') vulnerability in Apache Airfl
In Apache Airflow versions 2.2.4 through 2.3.3, the `database` webserver session backend was susceptible to session fixa
Same weakness CWE-502 – Deserialization of Untrusted Data
View allSame technique Deserialization
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-33588