REDHAT-BUG-2539284: Medium severity Red Hat Keycloak vulnerability

Published Sep 23, 2026
·
Updated

A flaw was found in Keycloaks Pushed Authorization Request PAR implementation. The single-use enforcement for PAR request URIs, as required by RFC 9126 section 4, is bypassed when using the silent authentication path prompt=none. When an existing SSO session is present, the authorization endpoint short-circuits directly to the successful-flow redirect handler. In this specific code path, the PAR consumption logic is never triggered, meaning the pushed request object is not removed from storage after use. Exploitation requires that the realm has PAR enabled, the attacker has valid client credentials to push an authorization request, and an active SSO session exists for the target user. A successful attacker can replay the requesturi multiple times to mint distinct, fully redeemable authorization codes for the same user without requiring the resource owner to re-authenticate. This allows for unauthorized token generation and violates the single-use guarantee required for FAPI-2 and RFC 9126 compliant deployments.

Affected Software

1 affected component
Red Hat Keycloak

Event History

Sep 23, 2026
Data Sourced
via Red Hat·09:33 AM
DescriptionSeverityAffected Software

Frequently Asked Questions

1

What conditions are required to exploit this issue?

PAR must be enabled for the realm, and the attacker must have valid client credentials that allow them to push an authorization request. The target user must also have an active SSO session, and the request must use the silent authentication path with prompt=none.

2

Who is realistically exposed?

Deployments using Keycloak PAR in FAPI-2 or RFC 9126-compliant flows are exposed when clients with valid credentials can submit PAR requests and users have active SSO sessions. The issue enables replay against a target user without requiring that user to authenticate again.

3

What can an attacker obtain by replaying a request URI?

An attacker can replay the same request_uri multiple times to mint distinct authorization codes for the same user. Those authorization codes are fully redeemable, enabling unauthorized token generation.

4

How can I determine whether my deployment is affected?

Check whether PAR is enabled in the relevant realm and whether authorization requests can be processed with prompt=none while an SSO session exists. An affected flow allows the same PAR request_uri to produce more than one successful authorization response rather than consuming and removing it after first use.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203