CVE-2026-58076
Modified Modified - Updated After Analysis

Arbitrary Code Execution in Apache Airflow

Vulnerability report for CVE-2026-58076, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-08-12

Last updated on: 2026-08-18

Assigner: Apache Software Foundation

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 Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-08-12
Last Modified
2026-08-18
Generated
2026-09-01
AI Q&A
2026-08-12
EPSS Evaluated
2026-08-31
NVD
EUVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
apache airflow From 3.3.0 (inc) to 3.3.1 (exc)

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-502 The product deserializes untrusted data without sufficiently ensuring that the resulting data will be valid.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This vulnerability in Apache Airflow involves unsafe deserialization of exception nodes. The system reconstructs exception objects by importing arbitrary classes from serialized data using import_string(). An attacker could exploit this by placing malicious code in an operator's executor_config, allowing execution of arbitrary functions like subprocess.check_output or builtins.eval. The issue affects both the Scheduler and API server components, which handle sensitive credentials and secrets.

Detection Guidance

Detecting this vulnerability requires checking Apache Airflow versions and reviewing serialized DAGs for suspicious executor_config values. Use commands like 'airflow version' to check the version and inspect DAG files for unexpected subprocess or eval calls in executor_config. Monitor scheduler and API server logs for deserialization errors or unusual class imports.

Impact Analysis

This vulnerability allows an attacker with access to create or modify DAGs to execute arbitrary code on the Airflow server. Since the Scheduler and API server components are affected, an attacker could gain access to database credentials, JWT signing secrets, and other sensitive data. The impact includes potential data breaches, unauthorized system access, and compromise of the entire Airflow deployment.

Compliance Impact

This vulnerability could lead to unauthorized access to sensitive personal data, violating GDPR and HIPAA requirements for data protection and access controls. A breach could result in regulatory fines, legal liabilities, and loss of compliance certifications due to unauthorized data exposure or system compromise.

Mitigation Strategies

Upgrade Apache Airflow to version 3.3.1 or later immediately. This version restricts imported exception classes to subclasses of BaseException, preventing arbitrary code execution. No additional configuration is required beyond the upgrade.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-58076. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart