{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-111421","assignerOrgId":"f0158376-9dc2-43b6-827c-5f631a4d8d09","state":"PUBLISHED","assignerShortName":"apache","dateReserved":"2026-10-16T02:28:03.557Z","datePublished":"2026-11-09T09:15:29.744Z","dateUpdated":"2026-11-09T15:10:06.471Z"},"containers":{"cna":{"providerMetadata":{"orgId":"f0158376-9dc2-43b6-827c-5f631a4d8d09","shortName":"apache","dateUpdated":"2026-11-09T09:15:29.744Z"},"title":"Apache Airflow: Execution API: set_xcom skips the reserved-key check, so task-written XComs instantiate airflow.* classes on the API server","problemTypes":[{"descriptions":[{"description":"CWE-502: Deserialization of Untrusted Data","lang":"en","cweId":"CWE-502","type":"CWE"}]}],"source":{"discovery":"EXTERNAL"},"affected":[{"vendor":"Apache Software Foundation","product":"Apache Airflow","packageURL":"pkg:pypi/apache-airflow-core","versions":[{"status":"affected","version":"3.0.0","lessThan":"3.4.0","versionType":"semver"}],"defaultStatus":"unaffected","collectionURL":"https://pypi.python.org","packageName":"apache-airflow-core"}],"descriptions":[{"value":"Apache Airflow's Task Execution API stored XCom values written by a task without the reserved-key check applied elsewhere, so a Dag author's task could write an XCom that, when a user later viewed it through the API with deserialization enabled, made the API server instantiate classes from the `airflow.*` namespace with arguments the Dag author chose. This is an incomplete fix for CVE-2026-59242: users who applied that fix in apache-airflow 3.3.1 remain affected through this route and should upgrade to apache-airflow 3.4.0 or later.","lang":"en","supportingMedia":[{"type":"text/html","base64":false,"value":"Apache Airflow's Task Execution API stored XCom values written by a task without the reserved-key check applied elsewhere, so a Dag author's task could write an XCom that, when a user later viewed it through the API with deserialization enabled, made the API server instantiate classes from the `airflow.*` namespace with arguments the Dag author chose. This is an incomplete fix for CVE-2026-59242: users who applied that fix in apache-airflow 3.3.1 remain affected through this route and should upgrade to apache-airflow 3.4.0 or later."}]}],"references":[{"url":"https://github.com/apache/airflow/pull/72718","tags":["patch"]},{"url":"https://github.com/apache/airflow/pull/74829","tags":["patch"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-59242","tags":["related"]},{"url":"https://lists.apache.org/thread.html/pwdwx354tv0x3m8wzfhh59r6wyztj2lk","tags":["vendor-advisory"]}],"metrics":[{"other":{"type":"Textual description of severity","content":{"text":"moderate"}},"scenarios":[{"lang":"en","value":"GENERAL"}]}],"credits":[{"lang":"en","value":"Qi Qin of depthfirst","type":"finder"},{"lang":"en","value":"Hama1cco","type":"finder"},{"lang":"en","value":"Zhixi \"Jace\" Sun, independent security researcher","type":"finder"},{"lang":"en","value":"Michael Lip (theluckystrike)","type":"finder"},{"lang":"en","value":"Jarek Potiuk","type":"remediation developer"}],"x_generator":{"engine":"airflow-s/generate_cve_json.py"}},"adp":[{"metrics":[{"cvssV3_1":{"scope":"UNCHANGED","version":"3.1","baseScore":8.8,"attackVector":"NETWORK","baseSeverity":"HIGH","vectorString":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","integrityImpact":"HIGH","userInteraction":"NONE","attackComplexity":"LOW","availabilityImpact":"HIGH","privilegesRequired":"LOW","confidentialityImpact":"HIGH"}},{"other":{"type":"ssvc","content":{"timestamp":"2026-11-09T15:09:46.042477Z","id":"CVE-2026-111421","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"total"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"title":"CISA ADP Vulnrichment","providerMetadata":{"orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","shortName":"CISA-ADP","dateUpdated":"2026-11-09T15:10:06.471Z"}}]}}