The Keycloak authentication manager in `apache-airflow-providers-keycloak` did not generate or validate the OAuth 2.0 `state` parameter on the login / login-callback flow, and did not use PKCE. An attacker with a Keycloak account in the same realm could deliver a crafted callback URL to a victim's browser and cause the victim to be logged into the attacker's Airflow session (login-CSRF / session fixation), where any credentials the victim subsequently stored in Airflow Connections would be harvestable by the attacker. Users are advised to upgrade `apache-airflow-providers-keycloak` to 0.7.0 or later.
History

Sat, 18 Apr 2026 15:45:00 +0000

Type Values Removed Values Added
First Time appeared Apache
Apache airflow
Vendors & Products Apache
Apache airflow

Sat, 18 Apr 2026 14:30:00 +0000

Type Values Removed Values Added
References

Sat, 18 Apr 2026 13:45:00 +0000

Type Values Removed Values Added
Description The Keycloak authentication manager in `apache-airflow-providers-keycloak` did not generate or validate the OAuth 2.0 `state` parameter on the login / login-callback flow, and did not use PKCE. An attacker with a Keycloak account in the same realm could deliver a crafted callback URL to a victim's browser and cause the victim to be logged into the attacker's Airflow session (login-CSRF / session fixation), where any credentials the victim subsequently stored in Airflow Connections would be harvestable by the attacker. Users are advised to upgrade `apache-airflow-providers-keycloak` to 0.7.0 or later.
Title Apache Airflow: OAuth Login CSRF — Missing State Parameter in Keycloak Auth Manager
Weaknesses CWE-352
References

cve-icon MITRE

Status: PUBLISHED

Assigner: apache

Published:

Updated: 2026-04-18T13:30:35.729Z

Reserved: 2026-04-16T00:13:13.957Z

Link: CVE-2026-40948

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-04-18T14:16:10.897

Modified: 2026-04-18T14:16:10.897

Link: CVE-2026-40948

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-04-18T15:30:03Z