Skip to main content

Apache Airflow Keycloak EUVDEUVD-2026-102520

| CVE-2026-92228 MEDIUM
Incorrect Permission Assignment for Critical Resource (CWE-732)
2026-10-15 apache GHSA-79vw-4xm5-93ph
6.5
CVSS 3.1 · Vendor: apache
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Authenticate as a provisioned team member
  2. Exploit
    Open audit-log view or event-log API
  3. Execution
    Request events outside own team
  4. Impact
    Read other teams' audit records

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V13 - Configuration Permission assignment review
Exploitation Conditions

Requires all of: [core] multi_team enabled, the Keycloak auth manager configured, and teams provisioned via airflow keycloak-auth-manager create-team (which attached team roles to the shared View resource). The attacker must be an authenticated, provisioned member of at least one team. Specifically, audit-log entries not tied to a Dag, import errors for files with no registered Dag, and reparse views were authorized against View - which every team role can read - instead of an admin-restricted resource. Limiting factors that reduce real-world risk: valid team-member authentication is mandatory (not anonymous/remote-unauthenticated), the single-team/default and non-Keycloak deployments are entirely unaffected, impact is read-only disclosure of audit data (no write/integrity or availability impact), and the fix requires re-running the create-team CLI so the new AdminView resource exists.

Impact

This is a medium-severity, access-control information-disclosure flaw (CWE-732, improper permission assignment) whose real-world risk is tightly bounded by its preconditions rather than by broad exploitability. No CVSS vector, EPSS score, SSVC decision, KEV listing, or public POC was provided in the input, so quantitative exploitation signals are entirely absent and cannot be compared - the assessment rests on the description and the vendor patch (PR #73696). Exploitation requires an already-authenticated team member and a very specific deployment: [core] multi_team enabled, the Keycloak auth manager in use, and teams provisioned via the CLI. Under those conditions any team member could read other teams' audit-log events via the UI or event-log API - a confidentiality-only tenant-isolation break, not RCE or privilege escalation. There is no public evidence of exploitation; treat this as a patch-at-normal-cadence multi-tenancy hardening issue rather than an emergency. Note the disagreement between signal availability and severity framing: the vendor assigned no CVSS and provided no exploitation telemetry, so any 'high priority' framing would be unsupported by the data - prioritize based on whether you actually run multi-team Keycloak Airflow.

Exploit ScenarioDerived

In an Airflow deployment running multi-team mode with the Keycloak auth manager, a legitimate member of Team A logs into the web UI (or calls the event-log API) and browses audit events belonging to Team B, to which they should have no visibility. Because every team role was granted global read on the shared View resource, cross-team audit data - operational activity, user actions, and metadata for files not tied to a Dag - is exposed. No public exploit code is identified; exploitation is trivial manual browsing once the vulnerable configuration exists.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 15, 2026

Information disclosure in the Apache Airflow Keycloak provider's multi-team mode lets any authenticated member of one provisioned team read other teams' audit events through the Airflow UI or the event-log API, because audit-log rows not tied to a Dag were authorized against the shared 'View' resource that every team role can read. Only deployments with '[core] multi_team' enabled, the Keycloak auth manager configured, and teams provisioned via 'airflow keycloak-auth-manager create-team' are affected; the default single-team mode, non-Keycloak auth managers, and unauthenticated users are unaffected (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N, CWE-732). The exposure is read-only and bounded by the requirement for valid team-member credentials, no public exploit code was identified at time of analysis, and the fix is available in apache-airflow-providers-keycloak 0.11.1 or later.

RemediationAI

Upgrade to apache-airflow-providers-keycloak 0.11.1 or later, which is the vendor-released patch: run 'pip install --upgrade apache-airflow-providers-keycloak>=0.11.1'. The upgrade alone is not sufficient - after upgrading, re-run 'airflow keycloak-auth-manager create-team <team>' for each existing team so the new 'AdminView' Keycloak resource, the 'AdminViewAccess' scope-based permission (GET scope, AFFIRMATIVE strategy), and its grant to the SuperAdmin role are created in the Keycloak client; the upstream changelog warns that until the Keycloak client is updated, access to the AdminView-protected views (all-audit-logs, all import errors, reparse) is denied to every user, including SuperAdmin - an availability trade-off of the fix rather than a security gap. As a compensating control for teams that cannot upgrade immediately, disable multi-team mode by setting '[core] multi_team = False' (this reverts to the single-team authorization model and removes the cross-team read path but also disables the multi-team provisioning feature), or remove the 'View' grant on the shared resource from team roles in the Keycloak client while restricting those views to SuperAdmin - noting that hand-editing the Keycloak authorisation resources is easily overwritten by subsequent CLI runs. There is no patch-independent fix in code for deployments that continue to run the vulnerable provider with multi-team provisioning enabled. Details and the patch are in https://github.com/apache/airflow/pull/73696.

Affected VersionsENISA

Apache Airflow Keycloak provider 0 <0.11.1

Affected Packages

euvd apache_airflow_keycloak_provider fix: 0.11.1

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The flaw is an improper permission assignment (CWE-732) in the Keycloak auth manager shipped with apache-airflow-providers-keycloak. Airflow's authorization layer maps UI views and API endpoints to 'AccessView' values; the set {AUDIT_LOGS_ALL, IMPORT_ERRORS_ALL, REPARSE_ALL} covers records that carry no per-Dag or per-team key to authorize against - audit-log entries not tied to a Dag, import errors for files with no registered Dag, and repair/reparse operations. In multi-team mode the provider's overridden 'is_authorized_team' resolved all of these against Keycloak's shared 'View' resource, and the CLI helper '_attach_team_permissions' granted 'View' to every team role, so 'every team role can read' those views. The upstream fix (PR 73696) introduces a dedicated 'AdminView' Keycloak resource in resources.py, routes the ADMIN_ACCESS_VIEW_NAMES set to that resource when '[core] multi_team' is true, adds an 'AdminViewAccess' scope-based permission (GET scope, AFFIRMATIVE decision strategy) granted only to the SuperAdmin role via '_attach_superadmin_permissions', and treats an 'invalid_resource' response for AdminView the same way as for team resources so older-provisioned Keycloak clients degrade safely. Documentation and the changelog were updated alongside the code to describe the new resource boundary.

Know when Apache Airflow Keycloak Provider gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (apache) PRIMARY 6.5 HIGH
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
vuln.today AI 4.3 MEDIUM

Network-accessible UI/API with low complexity, but requires an authenticated team member (PR:L); impact is read-only cross-team audit disclosure, so C:L and I/A:N.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (apache).

CVSS VectorVendor: apache

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
None
Availability
None

Lifecycle Timeline

2
CVSS changed
Oct 16, 2026 - 15:23 NVD
6.5 (MEDIUM)
CVE Published
Oct 15, 2026 - 21:37 cve.org
HIGH

DescriptionCVE.org

The Apache Airflow Keycloak provider's multi-team provisioning (_attach_team_permissions) granted every team role global read access to audit logs. Deployments that enable multi-team mode with the Keycloak auth manager and provision teams through it are affected: any authenticated member of one team could read other teams' audit events through the UI or the event-log API.

Users of apache-airflow-providers-keycloak are recommended to upgrade to apache-airflow-providers-keycloak 0.11.1 or later.

Executive ViewAI

Why It Matters

A high-severity information disclosure flaw in the Apache Airflow Keycloak provider's multi-team mode allows any authenticated member of one provisioned team to read audit events belonging to other teams through the Airflow UI or event-log API. The exposure is limited to deployments running multi-team mode with the Keycloak auth manager and provisioned teams, but any organization using that configuration should treat cross-team audit log confidentiality as compromised until patched.

Business Impact: Medium
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.2%
Top 93% exploitable
Prevalence
Low
niche provider, only multi-team Keycloak auth-manager Airflow deployments affected
Data Quality
5 sources
Confidence: Medium
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
Medium
Technical Impact
Partial

Priority Score

32
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +32
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy