Błąd logiczny w autentykatorze `client-kubernetes-secret` pakietu UDS Identity Config pozwala atakującemu uwierzytelnić się jako dowolny klient Keycloak bez znajomości prawidłowego sekretu. Podatność posiada maksymalny wynik CVSS 10.0 i umożliwia przejęcie kontroli nad tokenami OAuth2 oraz zarządzanie innymi klientami.
▸ Pokaż oryginał (EN)
UDS Identity Config builds the Keycloak configuration image (realm, plugins, theme, truststore, JARs) consumed by UDS Core's Identity deployment. In versions 0.11.0 through 0.26.0, a logic error in the `client-kubernetes-secret` Keycloak client authenticator (shipped by `uds-identity-config` and consumed by UDS Core) causes the submitted `client_secret` to be overwritten with the mounted Kubernetes secret before comparison. An attacker who can reach the Keycloak token endpoint and knows a `client_id` using this authenticator can authenticate as that client with any `client_secret` value and obtain OAuth2 tokens scoped to the client's service account. In the case of the `uds-operator` client this token can be used to registry/modify other clients. Version 0.26.1 patches the issue.
W wersjach 0.11.0–0.26.0 autentykator `client-kubernetes-secret` nadpisuje przesłaną wartość `client_secret` sekretem zamontowanym z Kubernetes przed wykonaniem porównania. W efekcie każda wartość podana przez atakującego w polu `client_secret` zostaje zastąpiona wartością rzeczywistą, co sprawia że weryfikacja zawsze kończy się sukcesem. Atakujący musi jedynie znać `client_id` klienta korzystającego z tego autentykadora i mieć dostęp sieciowy do endpointu tokenów Keycloak.
Atakujący może uzyskać tokeny OAuth2 przypisane do konta serwisowego wybranego klienta Keycloak, a w przypadku klienta `uds-operator` — tworzyć i modyfikować innych klientów, co prowadzi do pełnego przejęcia tożsamości i uprawnień w środowisku UDS Core.
Należy zaktualizować UDS Identity Config do wersji 0.26.1, która zawiera poprawkę błędu logicznego. Szczegóły dostępne w referencjach producenta: https://github.com/defenseunicorns/uds-identity-config/releases/tag/v0.26.1
UDS Identity Config w wersjach 0.11.0 do 0.26.0 (włącznie) oraz środowiska UDS Core korzystające z tych wersji konfiguracji Keycloak.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:HDefenseunicorns Uds Identity Config
APPDefenseunicorns0.11.0 – 0.26.1 (bez)