CVE-2023-34035
WysokieCVSS 7.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 42 - wyżej niż 42% wszystkich znanych CVE
Streszczenie
Wersje Spring Security 5.8 przed 5.8.5, 6.0 przed 6.0.5 oraz 6.1 przed 6.1.2 mogą być podatne na błędną konfigurację reguł autoryzacji, jeśli aplikacja używa requestMatchers(String) oraz wielu serwletów, w tym DispatcherServlet Spring MVC.
Ocena ryzyka
Organizacja może być narażona na nieautoryzowany dostęp do zasobów, jeśli reguły autoryzacji są niewłaściwie skonfigurowane, co może prowadzić do poważnych naruszeń bezpieczeństwa.
Rekomendacja
Zaleca się aktualizację Spring Security do wersji 5.8.5, 6.0.5 lub 6.1.2 oraz przegląd konfiguracji reguł autoryzacji, aby upewnić się, że są one poprawnie ustawione.
Inne podatności w Spring Security
Zobacz wszystkie- CVE-2014-0097Wysokie
ActiveDirectoryLdapAuthenticator w Spring Security w wersjach od 3.2.0 do 3.2.1 oraz od 3.1.0 do 3.1.5 nie sprawdza długości hasła. W przypadku, gdy katalog pozwala na anonimowe logowanie, może błędnie uwierzytelnić użytkownika, który poda puste hasło.
- CVE-2026-59270Krytyczne
Spring Security zawiera wbudowany serwer LDAP UnboundID (UnboundIdContainer), który bezwarunkowo rejestruje poświadczenia administracyjne i wiąże swój nasłuch na wszystkich dostępnych interfejsach sieciowych. Dotyczy to wersji Spring Security 7.1.0, 7.0.0-7.0.6, 6.5.0-6.5.11, 6.4.0-6.4.18, 5.8.0-5.8.27 oraz 5.7.0-5.7.25.
- CVE-2026-59277Niskie
Narzędzie InetAddressMatchers w Spring Security udostępnia konstruktory matchInternal() i matchExternal() do tworzenia matchera adresów IP, który klasyfikuje adres jako wewnętrzny (prywatny) lub zewnętrzny (publiczny). Podatność dotyczy Spring Security 7.1.0.
- CVE-2026-59276Średnie
Wiele komponentów Spring Security porównuje wartości wrażliwe dla bezpieczeństwa za pomocą standardowej metody String.equals() zamiast porównania w czasie stałym. Ponieważ String.equals() zwraca wynik natychmiast po znalezieniu różnicy, czas odrzucenia nieprawidłowej wartości jest proporcjonalny do liczby pasujących znaków początkowych.
- CVE-2026-47877Wysokie
Spring Security Authorization Server w wersjach 7.1.0 oraz 7.0.0-7.0.6 zawiera podatność polegającą na tym, że domyślna strona zgody (consent page) renderuje wartości kontrolowane przez użytkownika bez kodowania encji HTML.
- CVE-2026-47842Średnie
Aplikacje używające AesBytesEncryptor z dwuargumentowym konstruktorem lub z przekazanym null jako generator IV i trybem CBC szyfrują dane za pomocą AES/CBC z wektorem inicjalizacyjnym o wartości null (same zera). Podatne są wersje Spring Security od 5.7.0 do 7.1.0.
- CVE-2026-47841Wysokie
Aplikacja korzystająca z obsługi WebAuthn w Spring Security może być podatna na obejście weryfikacji użytkownika w przypadku korzystania z rozproszonego magazynu sesji HTTP. Podatność dotyczy Spring Security 7.1.0, 7.0.0-7.0.6, 6.5.0-6.5.11 oraz 6.4.0-6.4.18.
- CVE-2026-41707Wysokie
Podatność na obejście uwierzytelniania przez atak typu capture-replay w Spring Security. DPoPProofJwtDecoderFactory zawiera podatność na atak typu replay oparty na pamięci podręcznej. Wewnętrzna pamięć podręczna przechowująca identyfikatory JWT ma ścisły limit rozmiaru, co pozwala atakującym na usunięcie prawidłowych wpisów przez zalanie serwera fałszywymi żądaniami, a następnie powtórzenie przechwyconych prawidłowych dowodów DPoP.
- CVE-2026-47838Średnie
Klasa SubjectDnX509PrincipalExtractor w Spring Security nieprawidłowo obsługuje niektóre uszkodzone wartości CN w certyfikatach X.509, co może prowadzić do odczytania błędnej nazwy użytkownika. W starannie spreparowanym certyfikacie może to umożliwić atakującemu podszycie się pod innego użytkownika. Dotyczy wersji 5.7.0-5.7.24, 5.8.0-5.8.26, 6.3.0-6.3.17, 6.4.0-6.4.17, 6.5.0-6.5.10.
- CVE-2026-41706Średnie
Podatność w Spring Security dotyczy CookieRequestCache i CookieServerRequestCache, które przechowują pełny absolutny URL żądania przed uwierzytelnieniem w ciasteczku przeglądarki. Po zalogowaniu użytkownik jest przekierowywany na ten URL bez walidacji, co umożliwia atak typu open redirect.
Oryginalny opis (angielski, źródło NVD)
Spring Security versions 5.8 prior to 5.8.5, 6.0 prior to 6.0.5, and 6.1 prior to 6.1.2 could be susceptible to authorization rule misconfiguration if the application uses requestMatchers(String) and multiple servlets, one of them being Spring MVC’s DispatcherServlet. (DispatcherServlet is a Spring MVC component that maps HTTP endpoints to methods on @Controller-annotated classes.) Specifically, an application is vulnerable when all of the following are true: * Spring MVC is on the classpath * Spring Security is securing more than one servlet in a single application (one of them being Spring MVC’s DispatcherServlet) * The application uses requestMatchers(String) to refer to endpoints that are not Spring MVC endpoints An application is not vulnerable if any of the following is true: * The application does not have Spring MVC on the classpath * The application secures no servlets other than Spring MVC’s DispatcherServlet * The application uses requestMatchers(String) only for Spring MVC endpoints

