High severity · published Apr 15, 2026
CVE-2025-54550
Apache Airflow: RCE by race condition in example_xcom dag
8.1
CVSS
0.6%
EPSS
No
On KEV
Description
The example example_xcom that was included in airflow documentation implemented unsafe pattern of reading value from xcom in the way that could be exploited to allow UI user who had access to modify XComs to perform arbitrary execution of code on the worker. Since the UI users are already highly trusted, this is a Low severity vulnerability. It does not affect Airflow release - example_dags are not supposed to be enabled in production environment, however users following the example could replicate the bad pattern. Documentation of Airflow 3.2.0 contains version of the example with improved resiliance for that case. Users who followed that pattern are advised to adjust their implementations accordingly.
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Attack vector
Network
Complexity
Low
Privileges
Low
User interaction
None
Confidentiality
High
Integrity
High
Availability
None
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)0.6% · higher than 47% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
AA
Apache Airflow · Apache Software Foundation
before 3.2.0 · source: vendor
AI
Airflow · Apache
before 3.2.0 · source: NVD
Affected product
AA
Apache Airflow
Apache Software Foundation
More from Apache Airflow
8.8
CVE-2020-11978
Apache Airflow Command Injection
9.8
CVE-2026-33264
Apache Airflow: DAG author RCE on webserver via unrestricted import_string() in BaseSerialization.deserialize()
9.8
CVE-2017-17836
In Apache Airflow 1.8.2 and earlier, an experimental Airflow feature displayed authenticated cookies, as well as passwords to databases used by Airflow
9.1
CVE-2026-86473
Apache Airflow: Logout ignores a presented Authorization bearer token, leaving it revocable only by expiry
9.1
CVE-2026-42252
Apache Airflow: BashOperator Jinja2 injection via dag_run.conf — low-privilege user pattern