CVE-2026-82310: Apache Airflow FAB provider: FAB auth manager: deactivated users retain and renew Core API JWT access
Apache Airflow FAB provider 2.0.0-3.8.x lets deactivated users keep unexpired Core API JWTs and mint replacements indefinitely.
Stale JWTs Let Deactivated Users Retain Access in Apache Airflow FAB Provider
In apache-airflow-providers-fab used with Apache Airflow 3's FAB auth manager, deactivating a user account does not invalidate access tokens (JWTs) already issued to that account, so the Core API keeps accepting any unexpired token naming the disabled user and even lets that token mint a replacement. The flaw (CWE-613, insufficient session expiration) is triggered whenever an administrator deactivates an account as an offboarding or containment step while the user's row remains in the database and a previously issued token has not expired. A deactivated user who replays their own legitimate token retains role-scoped Core API access indefinitely — no signature forgery or privilege escalation is involved, and access stays within the roles the account already held — so deactivation-based containment silently fails. Only deployments using Airflow 3 with the FAB auth manager and Core API token authentication are affected; password authentication correctly rejects the disabled account. No public proof-of-concept, CISA KEV listing, or confirmed in-the-wild exploitation is known, and the issue is not yet CVSS-scored.
What to do: Upgrade apache-airflow-providers-fab to version 3.9.0 or later, which rejects tokens naming a deactivated account. Until upgraded, when deactivating a user also delete the account row or rotate the API JWT signing secret to invalidate outstanding tokens, and review Core API audit logs for any activity by recently deactivated accounts.
| Product | Affected |
|---|---|
| Apache Software Foundation Apache Airflow FAB provider (apache-airflow-providers-fab, FAB auth manager) used with Airflow 3 Core API token authenti | Versions prior to 3.9.0 (fixed in 3.9.0); impact applies only when deployed as the auth manager for Apache Airflow 3 with Core API token authentication |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
Apache Airflow FAB provider: deactivating a user account does not stop tokens issued to that account before deactivation. Password authentication correctly rejects the disabled account, but the Core API continues to accept an existing, unexpired token naming it, and lets that token mint a replacement — so the account keeps its role-scoped access indefinitely after an administrator has disabled it. The user replays their own legitimate credential; no signature forgery or privilege escalation is involved, and the access stays within the roles the account already held. Affects deployments using Airflow 3 with the FAB auth manager and Core API token authentication, where an administrator deactivates an account whose row remains in the database and whose previously issued token has not expired. The trigger is administrative deactivation as a containment action, which silently fails to contain. Users of apache-airflow-providers-fab are recommended to upgrade to version 3.9.0 or later, which rejects tokens naming a deactivated account.
Apache Airflow FAB provider 2.0.0-3.8.x lets deactivated users keep unexpired Core API JWTs and mint replacements indefinitely.
Today 1.6K readers · 2.5K views · 779 reads · all time 189K views