CVE-2026-111453
MediumCVSS 4.3Summary
Apache Airflow's API endpoint for deleting an asset's queued events checked Dag edit permission against the `dag_id` query parameter, but deleted the queued events of every Dag the caller could read. An authenticated user with edit permission on one Dag and read access to others could suppress asset-triggered runs of Dags they cannot edit. This is an incomplete fix for CVE-2026-75157: users who upgraded to apache-airflow 3.3.2 for that fix are still affected and should upgrade to apache-airflow 3.4.0 or later.
Risk Assessment
A user with limited permissions can disrupt the scheduling of Dags they should not influence, potentially causing missed tasks and data processing errors.
Recommendation
Upgrade Apache Airflow to version 3.4.0 or later, even if the CVE-2026-75157 fix in version 3.3.2 was previously applied.
Other vulnerabilities in Apache Airflow
See all- CVE-2026-96285Unknown
Apache Airflow 3.3.1 contains an incomplete fix for CVE-2026-67260 — the next_kwargs type check occurs only after deserializing the whole payload, allowing constructors of allow-listed classes to run in the scheduler process. A Dag author can trigger code execution in the scheduler and API server without non-default configuration; versions before 3.3.0 are not affected.
- CVE-2026-86829Unknown
Apache Airflow's scheduler fully deserializes XCom values written by task code while evaluating task dependencies. A Dag author controlling XCom content can therefore influence data deserialized in the scheduler process, exceeding documented permissions.
- CVE-2026-86468Unknown
Apache Airflow's CLI records its arguments in the audit log but masks secrets by argument position, so some supported command shapes leave secrets in cleartext, for example a trailing `--description` on Variable commands, `--conn-extra`, and the inline `--password` of `airflow keycloak-auth-manager` commands. A user who can read audit events but is denied Variable and Connection access can retrieve those values through the event-log API.
- CVE-2026-82337Unknown
Apache Airflow rebuilt deadline alert fields through generic deserialization, which imports and instantiates the class named in the serialized Dag, in the scheduler and API server. A Dag author could cause classes within Airflow's deserialization allow list to be constructed in those processes with arguments they control. Deployments whose Dags use deadline alerts are affected; this is an incomplete fix of CVE-2026-45360, which only hardened the reference field.
- CVE-2026-76185Unknown
Apache Airflow's Task SDK secret cache built its keys from the team name and secret id with unescaped _ delimiters, so different (team, secret id) pairs could collide. In multi-team deployments a Dag author could read another team's Variable or Connection value by crafting a colliding secret id. Only deployments with both core.multi_team = True and secrets.use_cache = True are affected.
- CVE-2026-68982Unknown
Apache Airflow's CeleryExecutor ran callback workloads (ExecuteCallback, used for deadline-alert callbacks) without validating the workload's authentication token. Anyone able to write to the Celery broker could enqueue a forged callback and execute arbitrary code on every CeleryExecutor worker, without Airflow credentials. Deployments using the CeleryExecutor are affected.
- CVE-2026-50204Unknown
Apache Airflow's audit log stored Connection and Variable secret values in cleartext in the `Log.extra` column because the secrets masker matched only on configured sensitive key names. An authenticated low-privilege user with read access to the event-log / audit API — with no prior access to the affected connection or variable — could read those rows and recover the credentials verbatim.
- CVE-2026-40913Unknown
Apache Airflow's public Import Errors API returns the raw parse-failure stack trace to any user with the ImportError.can_read permission when the failing file has no registered DAG. This happens when a file fails to parse before any DAG is defined, or when all of its previously registered DAGs are removed but the parse error remains. Users who should not see that file's details can read stack traces that may expose file paths and code.
- CVE-2026-113508Unknown
Apache Airflow's logout endpoint attempted to revoke the presented token on the server, but any failure during revocation was silently ignored and logout still reported success. When the auth manager redirects logout to an external logout URL (for example the FAB or Keycloak auth managers), server-side revocation is the only thing that invalidates the Airflow token; it failed on database errors and, reliably, for tokens from an external issuer accepted via [api_auth] trusted_jwks_url whose token identifier is longer than 32 characters. Anyone holding a copy of a user's token from before logout could keep using it against the Airflow API until it expired.
- CVE-2026-113504Unknown
Apache Airflow's secrets masker stopped descending into nested structures after five levels, so a secret registered with the masker — for example a Connection password or a Variable value — that appeared more than five containers deep under non-sensitive keys was shown in cleartext in task logs and rendered template fields. A user who can read task logs or rendered templates, but is not meant to see those secrets, could read them.
Original NVD description (English source)
Apache Airflow's API endpoint for deleting an asset's queued events checked Dag edit permission against the `dag_id` query parameter, but deleted the queued events of every Dag the caller could read. An authenticated user with edit permission on one Dag and read access to others could suppress asset-triggered runs of Dags they cannot edit. This is an incomplete fix for CVE-2026-75157: users who upgraded to apache-airflow 3.3.2 for that fix are still affected and should upgrade to apache-airflow 3.4.0 or later.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

