CVEFinder.io

CVE-2026-58076

⚠️ high
Summary

Apache Airflow's serialization layer reconstructed exception nodes by calling `import_string()` on a class name taken from the serialized blob and instantiating it with arguments from the same blob, with no restriction on what could be imported. An operator's `executor_config` reaches that branch, so a Dag author could place a value there that causes an arbitrary callable to be imported and invoked -- for example `subprocess.check_output`, or `builtins.eval` on the `builtins`-prefixed variant. T

Description

Apache Airflow's serialization layer reconstructed exception nodes by calling `import_string()` on a class name taken from the serialized blob and instantiating it with arguments from the same blob, with no restriction on what could be imported. An operator's `executor_config` reaches that branch, so a Dag author could place a value there that causes an arbitrary callable to be imported and invoked -- for example `subprocess.check_output`, or `builtins.eval` on the `builtins`-prefixed variant. The code runs in the **Scheduler**, which reconstructs serialized Dags in its normal loop with no request involved, and in the **API server**, on any authenticated read of the Dag such as `GET /api/v2/dags/{dag_id}/details`. Both are components the Airflow security model states must never execute Dag-author code, and both hold the metadata database credentials and the JWT signing secret. No non-default configuration is required. This is a **different sink from CVE-2026-33264**, which covered only the trigger branch of the same deserializer: deployments that upgraded in response to that advisory are still affected through the exception branch and must upgrade again. Users are advised to upgrade to apache-airflow 3.3.1 or later, which restricts the imported class to a subclass of `BaseException`.

CVSS Score
8.8
High
EPSS Score
0.5
Exploit Probability
Published Date
2026-08-12
First Seen: 2026-08-13
📊 Relative Risk Intelligence

This CVE is High Risk - more severe than 80.8% of all 365,987 vulnerabilities in our database.

#70,122
Top 25% most severe
Severity Percentile
🎯 CISA SSVC Assessment Updated: Aug 18, 2026
🔍 Exploitation Status
None
No known exploits
⚙️ Automatable
NO
Requires human interaction
💥 Technical Impact
Total
Complete system compromise possible
🏆 Discovered By
Jan Kahmen (turingpoint), GitHub: @kah-ja Jarek Potiuk (remediation developer)
SSVC data provided by CISA
Last Modified 2026-09-16
Source NVD 🔗
CVSS Vector 3.1 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CWE IDs (Weakness Types)

📦 Affected Products 1

🔗 References 3

🔗 Related CVEs 6

CVE ID Severity CVSS EPSS Summary Published
CVE-2026-75158 🔶 medium 4.3 0.6 Apache Airflow's `/assets/events` API returned asset events for every Dag in the deployment, with no filter restricting ... 2026-09-21
CVE-2026-82355 🔶 medium 4.2 0.7 When a request to the Airflow core API carries both a session cookie and an explicit `Authorization: Bearer` token, Airf... 2026-09-21
CVE-2026-86473 ⛔ critical 9.1 0.8 Apache Airflow: the Core API logout endpoint revokes only a session token presented as the _token cookie. When a client ... 2026-09-21
CVE-2026-54183 🔶 medium 4.3 0.5 Apache Airflow's secrets masker hides values stored under sensitive key names when they are displayed in the UI. The mas... 2026-08-12
CVE-2026-59242 🔶 medium 5.4 0.6 Apache Airflow's XCom `GET /api/v2/{...}/xcomEntries/{key}?deserialize=true` endpoint passed a string-literal payload th... 2026-08-12
CVE-2026-59244 🔶 medium 6.5 0.2 Apache Airflow's secrets masker did not mask `var.json` Variable values whose value is a dict in the Rendered Templates ... 2026-08-12
These CVEs affect the same products