Podatność w Dex, usłudze tożsamości opartej na OpenID Connect, umożliwia atakującemu kradzież kodu autoryzacji OAuth podczas przepływu OIDC. Skradziony kod może zostać wymieniony na token uwierzytelniający, co pozwala na nieautoryzowany dostęp do aplikacji akceptujących tokeny wystawione przez podatną instancję Dex.
▸ Pokaż oryginał (EN)
Dex is an identity service that uses OpenID Connect to drive authentication for other apps. Dex instances with public clients (and by extension, clients accepting tokens issued by those Dex instances) are affected by this vulnerability if they are running a version prior to 2.35.0. An attacker can exploit this vulnerability by making a victim navigate to a malicious website and guiding them through the OIDC flow, stealing the OAuth authorization code in the process. The authorization code then can be exchanged by the attacker for a token, gaining access to applications accepting that token. Version 2.35.0 has introduced a fix for this issue. Users are advised to upgrade. There are no known workarounds for this issue.
Atakujący nakłania ofiarę do odwiedzenia złośliwej strony internetowej, a następnie przeprowadza ją przez przepływ OIDC. W trakcie tego procesu dochodzi do przechwycenia kodu autoryzacji OAuth (authorization code). Podatność wynika z niewystarczającej kontroli dostępu (CWE-862) oraz ujawnienia wrażliwych danych (CWE-200) w kontekście publicznych klientów Dex. Przejęty kod autoryzacji może zostać następnie wymieniony przez atakującego na token uwierzytelniający bez wiedzy ofiary.
Atakujący uzyskuje token uwierzytelniający ofiary, co pozwala mu na nieautoryzowany dostęp do wszystkich aplikacji akceptujących tokeny wystawione przez podatną instancję Dex, potencjalnie kompromitując poufność i integralność danych tych aplikacji.
Należy zaktualizować Dex do wersji 2.35.0 lub nowszej, która zawiera poprawkę dla tego problemu. Producent nie wskazuje żadnych znanych obejść (workarounds) — jedynym zalecanym działaniem jest aktualizacja.
Instancje Linuxfoundation Dex w wersjach wcześniejszych niż 2.35.0, które skonfigurowane są z publicznymi klientami (public clients) lub obsługują klientów akceptujących tokeny wystawione przez takie instancje.
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:NLinuxfoundation Dex
APPLinuxfoundation< 2.35.0
Powiązane podatności
Pominięcie uwierzytelniania SAML w bibliotece Dex (dexidp/dex)
Dex SAML connector — pominięcie weryfikacji podpisu XML (signature bypass)
Dex is an identity service that uses OpenID Connect to drive authentication for other apps. Dex 2.37.0 serves ...
containerd CRI plugin: brak walidacji etykiet obrazu umożliwia RCE na hoście
CloudNativePG: eskalacja uprawnień do superużytkownika PostgreSQL przez metrics exporter