W Keycloak wykryto błąd polegający na tym, że przy włączonej funkcji podglądu JWT authorization grant wyłączone konta użytkowników nie są prawidłowo weryfikowane podczas przetwarzania tokenu JWT. Zdalny atakujący z niskim poziomem uprawnień może uzyskać token JWT dla wyłączonego konta i uzyskać nieautoryzowany dostęp do chronionych zasobów.
▸ Pokaż oryginał (EN)
A flaw was found in Keycloak. When the JSON Web Token (JWT) authorization grant preview feature is enabled and a user account is disabled, Keycloak fails to validate the user’s disabled status during JWT authorization grant processing. A remote attacker with low privileges can exploit this improper access control vulnerability by presenting a valid assertion token from an external identity provider to obtain a JWT for a disabled user. This allows unauthorized access to sensitive resources.
Podatność występuje, gdy włączona jest eksperymentalna funkcja JWT authorization grant (preview feature) w Keycloak. W takiej konfiguracji serwer autoryzacji nie sprawdza, czy konto użytkownika jest aktywne podczas przetwarzania żądania JWT authorization grant. Atakujący może przedstawić prawidłowy token assertion z zewnętrznego dostawcy tożsamości (external identity provider), co prowadzi do wystawienia tokenu JWT dla wyłączonego użytkownika, omijając w ten sposób mechanizm kontroli dostępu.
Atakujący może uzyskać ważny token JWT dla konta, które powinno być zablokowane, co umożliwia nieautoryzowany dostęp do poufnych zasobów oraz naruszenie integralności danych bez możliwości odmowy ich dostępności.
Należy zaktualizować Keycloak do wersji 26.5.3 lub nowszej. Jako obejście należy rozważyć wyłączenie eksperymentalnej funkcji JWT authorization grant preview feature do czasu wdrożenia patcha. Szczegóły dostępne pod adresem https://github.com/keycloak/keycloak/releases/tag/26.5.3
Keycloak z włączoną funkcją podglądu JWT authorization grant (JWT authorization grant preview feature); zgodnie z referencjami poprawka dostępna jest od wersji 26.5.3
Podatność dotyczy wyłącznie konfiguracji z włączoną funkcją podglądu (preview feature) JWT authorization grant — instalacje Keycloak bez tej funkcji nie są narażone.
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:NRed Hat Build Of Keycloak
APPRedhat26.5.2
Powiązane podatności
Keycloak SAML Broker: pominięcie ograniczeń logowania w IdP-initiated SSO
Keycloak DCR: obejście polityki mapperów i eskalacja do admina
Keycloak DCR: fałszowanie ról administracyjnych przez User Property mapper
Keycloak: ominięcie polityki bezpieczeństwa przez nieprawidłową normalizację URI
Pominięcie weryfikacji podpisu SAML w Red Hat Build of Keycloak