CVE-2026-50623
ŚrednieCVSS 4.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 31 - wyżej niż 31% wszystkich znanych CVE
Streszczenie
Podatność obejścia uwierzytelniania w usłudze OAuth2 TokenIntrospectionService w Apache CXF. Z powodu brakującego słowa kluczowego 'throw' w sprawdzeniu kontekstu bezpieczeństwa, punkt końcowy (/services/oauth2/introspect) może być dostępny dla każdego nieuwierzytelnionego atakującego sieciowego. Należy jednak zauważyć, że jest to zabezpieczenie tylko w przypadku, gdy ktoś zapomniał włączyć uwierzytelnianie na usłudze. Zalecana aktualizacja do wersji 4.2.2, 4.1.7 lub 3.6.12.
Ocena ryzyka
Jeśli uwierzytelnianie nie jest włączone, atakujący może uzyskać dostęp do punktu introspect, co może prowadzić do ujawnienia informacji o tokenach lub ich niewłaściwego użycia.
Rekomendacja
Zaktualizuj Apache CXF do wersji 4.2.2, 4.1.7 lub 3.6.12. Upewnij się, że uwierzytelnianie jest włączone dla wszystkich usług OAuth2.
Inne podatności w Apache CXF
Zobacz wszystkie- CVE-2017-3156Wysokie
Kod walidacji MAC OAuth2 Hawk i JOSE w Apache CXF przed wersją 3.0.13 oraz 3.1.x przed wersją 3.1.10 nie używa algorytmu porównywania podpisów MAC w stałym czasie, co może być wykorzystane przez zaawansowane ataki czasowe.
- CVE-2026-97468Krytyczne
STSTokenValidator i Security Token Service (STS) w Apache CXF buforowały zwalidowane tokeny bezpieczeństwa przy użyciu niekryptograficznego 32-bitowego skrótu (Java Arrays.hashCode/hashCode()) i traktowały trafienie w pamięć podręczną jako dowód walidacji. Atakujący mógł stworzyć token (np. UsernameToken lub samopodpisana asercja SAML) którego skrót koliduje z wpisem w pamięci podręcznej, co pozwalało na akceptację tokenu bez weryfikacji hasła, zaufania podpisu czy wywołania STS. Mogło to umożliwić atakującemu uwierzytelnienie jako inny użytkownik i uzyskanie tokenów podpisanych przez STS dla tej tożsamości.
- CVE-2026-71575Krytyczne
Sprawdzenie świeżości uwierzytelnienia max_age w OidcClientCodeRequestFilter było nieskuteczne z powodu niezgodności jednostek (milisekundy/sekundy) i odwróconej polaryzacji porównania. Każda relying party używająca setMaxAgeOffset do wymuszania ponownego uwierzytelnienia cicho akceptowała sesje o dowolnym wieku, omijając polityki step-up authentication.
- CVE-2026-107938Krytyczne
W Apache CXF transport klienta HTTP oparty na Netty (cxf-rt-transports-http-netty-client) nie weryfikował, czy nazwa hosta w certyfikacie TLS serwera odpowiada nazwie wywoływanego hosta. Dotyczyło to zarówno HTTP/1.1, jak i HTTP/2, nawet gdy disableCNCheck pozostawało na domyślnej wartości false. Łańcuch certyfikatów był walidowany względem skonfigurowanego trust store, ale tożsamość punktu końcowego nie była. Atakujący w sieci mogący przechwycić ruch mógł przedstawić dowolny certyfikat zaufany przez klienta, np. publicznie wydany certyfikat dla kontrolowanej domeny, i podszyć się pod usługę docelową. Mógł następnie czytać lub modyfikować wymieniane wiadomości, w tym poświadczenia.
- CVE-2026-68079Krytyczne
W Apache CXF w komponencie DefaultEncryptingCodeDataProvider kod autoryzacyjny może być wykorzystany wielokrotnie z powodu błędu w implementacji funkcji removeCodeGrant. Narusza to wymóg RFC, że kod autoryzacyjny nie może być użyty więcej niż raz. Zalecane jest uaktualnienie do wersji 4.2.3, 4.1.8 lub 3.6.12.
- CVE-2026-65583Krytyczne
Walidacja tokenów OIDC w Apache CXF może akceptować samowystawione tokeny ID bez wymaganych kontroli roszczeń (issuer/subject/audience/time i sub_jwk binding), co umożliwia obejście uwierzytelnienia przy użyciu spreparowanych tokenów. Należy jednak zauważyć, że samowystawione tokeny ID nie są domyślnie akceptowane w walidatorze. Zalecane jest uaktualnienie do wersji 4.2.3, 4.1.8 lub 3.6.12.
- CVE-2026-63687Krytyczne
W Apache CXF filtr JwtRequestCodeFilter kopiuje wszystkie roszczenia z podpisanego JWT do mapy parametrów autoryzacji bez wykluczania parametrów wrażliwych dla bezpieczeństwa. Klient, który może wygenerować prawidłowo podpisany JWT (np. gdy zna lub skompromituje client_secret), może podmienić wartości code_challenge, code_challenge_method, nonce i state, co osłabia integralność PKCE i ochronę przed replay w OpenID Connect. Zalecane jest uaktualnienie do wersji 4.2.3, 4.1.8 lub 3.6.12.
- CVE-2026-61466Krytyczne
W Apache CXF w punkcie końcowym rejestracji klientów OAuth2 Dynamic Client Registration serwer autoryzacyjny akceptuje i przechowuje wartość `scope` dostarczoną w żądaniu rejestracji bez jej walidacji względem listy dozwolonych zakresów. Może to prowadzić do samodzielnego nadania sobie uprzywilejowanych zakresów przez klienta podczas rejestracji. Zalecane jest uaktualnienie do wersji 4.2.3, 4.1.8 lub 3.6.12.
- CVE-2026-66909Krytyczne
Transport JMS w Apache CXF deserializuje treść każdej przychodzącej wiadomości JMS ObjectMessage przy użyciu natywnej deserializacji Java, bez żadnych ograniczeń typów. Każdy atakujący, który może umieścić wiadomość w kolejce JMS usługi, może przesłać złośliwy zserializowany obiekt, prowadząc do odmowy usługi lub, jeśli odpowiednia klasa gadget znajduje się na ścieżce klas, do zdalnego wykonania kodu. Poprawka wyłącza domyślnie deserializację ObjectMessage, z możliwością ponownego włączenia przez konfigurację.
- CVE-2026-50628Krytyczne
Błąd logiczny w OAuthRequestFilter odrzuca prawidłowe żądania pochodzące z powiązanego adresu IP, jednocześnie bezwarunkowo przepuszczając żądania z dowolnego innego adresu IP. Włączenie tej funkcji bezpieczeństwa przypadkowo tworzy odwróconą kontrolę bezpieczeństwa.
Oryginalny opis (angielski, źródło NVD)
An authentication bypass vulnerability exists in the OAuth2 TokenIntrospectionService in Apache CXF. Due to a missing 'throw' keyword in the security context check, the introspection endpoint (/services/oauth2/introspect) can be accessed by any unauthenticated network attacker. However note that this is a safeguard only in the case that someone forgot to enable authentication on the service. Users are recommended to upgrade to version 4.2.2 or 4.1.7 or 3.6.12, which fixes this issue.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

