CVE-2026-67260
Received Received - Intake

Arbitrary Code Execution in Apache Airflow Scheduler

Vulnerability report for CVE-2026-67260, 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-12

Assigner: Apache Software Foundation

Description

Apache Airflow 3.3.0 moved human-in-the-loop tasks from the triggerer to a new `awaiting_input` task state swept by the scheduler. That sweep deserializes the task instance's `next_kwargs` without an allow-list, so a Dag author β€” who controls that value through the task execution API β€” can cause an arbitrary module import and object instantiation inside the scheduler process, or terminate the scheduler job. No non-default configuration is required: the sweep runs unconditionally every 15 seconds, and the default `allowed_deserialization_classes` setting does not cover this code path. Versions before 3.3.0 are not affected, because human-in-the-loop tasks deferred onto the triggerer instead. This is a different code path from CVE-2026-58076, which covers the same unguarded exception-node deserialization reached elsewhere β€” deployments that applied that fix must upgrade for this issue as well. Users are advised to upgrade to apache-airflow 3.3.1 or later.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-08-12
Last Modified
2026-08-12
Generated
2026-08-12
AI Q&A
2026-08-12
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

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

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

Apache Airflow 3.3.0 introduced a new task state called `awaiting_input` handled by the scheduler. The scheduler deserializes task instance data without proper validation, allowing attackers who control task execution to import arbitrary modules or instantiate objects within the scheduler process. This occurs because the `next_kwargs` field is not restricted by an allow-list. The vulnerability affects versions 3.3.0 and requires no special configuration to exploit.

Detection Guidance

Check Apache Airflow scheduler logs for crashes or errors every 15 seconds, which may indicate the vulnerability. Monitor for tasks stuck in awaiting_input state or scheduler process terminations. Review task instance logs for unprocessable next_kwargs values causing failures.

Impact Analysis

An attacker with access to the task execution API could crash the scheduler, execute arbitrary code, or cause denial-of-service by terminating the scheduler process. This could disrupt workflows, lead to data loss, or allow unauthorized actions within the Airflow environment. The scheduler runs the vulnerable code every 15 seconds, increasing exposure.

Compliance Impact

This vulnerability could lead to unauthorized code execution or data breaches, violating confidentiality and integrity requirements in GDPR and HIPAA. A compromised scheduler may expose sensitive data or allow unauthorized modifications, risking non-compliance with data protection and security controls.

Mitigation Strategies

Upgrade Apache Airflow to version 3.3.1 or later immediately. Ensure no custom task instances rely on unprocessable next_kwargs values. Monitor scheduler stability and task execution after upgrade.

Chat Assistant

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

EPSS Chart