Wysoki Odebrany

CVE-2026-118513

opublikowano:
modyfikacja:
Ocena CVSS
7.7
Wysoki · v4.0
wektor: CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

>_ Opis

Tłumaczenie automatyczne – może zawierać nieścisłości.

Ominięcie uwierzytelniania poprzez fałszowanie w X509Authenticator i X509AuthenticationListener wersji Symfony wcześniejszych niż 5.4.56, 6.x wcześniejszych niż 6.4.50, 7.x wcześniejszych niż 7.4.23 i 8.x wcześniejszych niż 8.1.11 umożliwia atakującemu posiadającemu certyfikat od zaufanego urzędu certyfikacji aplikacji, który może wpłynąć na CN , na uwierzytelnienie jako dowolnego użytkownika aplikacji, w tym uprzywilejowanego, po niekompletnej poprawce dla CVE-2026-45063.
X509Authenticator wyodrębnia identyfikator użytkownika z nazwy wyróżniającej podmiotu (nazwy wyróżniającej), którą serwer WWW przekazuje w $_SERVER['SSL_CLIENT_S_DN']. Poprawka CVE-2026-45063 zakotwiczyła tę ekstrakcję w granicy RDN (względna nazwa wyróżniająca), ale użyte wyrażenie regularne nie uwzględniało ucieczki. Wyrażenie działa w odniesieniu do już serializowanej nazwy wyróżniającej, więc nie może odróżnić separatora RDN od znaku separatora występującego wewnątrz wartości. Zgodnie z RFC 2253, używanym przez Apache i $ssl_client_s_dn w Nginx, przecinek wewnątrz wartości jest znakowany jako \, a wyrażenie niezależnie odczytuje go jako separator. RFC 2253 również nie traktuje / jako separatora, więc pozostawia go bez wartości wewnątrz wartości, podczas gdy wyrażenie traktuje każdy / jako jeden. Starszy format X509_NAME_oneline(), używany przez LegacyDNStringFormat Apache i $ssl_client_s_dn_legacy firmy Nginx, jest odbiciem lustrzanym: ucieka / as \/ i pozostawia nagi. W tym formacie certyfikat bez atrybutu emailAddress lub którego poprzedzający go zatruty CN jest uwierzytelniany jako przemycony adres.





Aby uwzględnić zarówno RFC 2253, jak i starszy format X509_NAME_oneline(), X509Authenticator i X509AuthenticationListener dzielą teraz nazwę wyróżniającą na nazwy RDN przed wyszukiwaniem atrybutu, zamiast dopasowywać atrybut do serializowanego ciągu znaków. Wybierają separator z serializacji, dzielą tylko na nieuniknione wystąpienia tego separatora, następnie usuwają zmianę znaczenia każdego RDN zgodnie z regułami jego formatu i wymagają, aby atrybut obejmował cały RDN. Przyjęta gramatyka wartości pozostaje niezmieniona.




Aplikacje przekazujące klucz użytkownika dla poszczególnych atrybutów (takie jak SSL_CLIENT_S_DN_Email) oraz wdrożenia, których urząd certyfikacji generuje lub weryfikuje temat, nie są dotknięte tą luką.

>_ Słabości (CWE)

>_ Referencje

Dane podatności pochodzą z oficjalnych źródeł (CVE® List / NVD). Opisy po polsku są tłumaczone automatycznie i mogą zawierać nieścisłości – na stronie rekordu można wyświetlić wersję angielską.

This product uses the NVD API but is not endorsed or certified by the NVD.

Copyright © 1999–2026, The MITRE Corporation. CVE is a registered trademark and the CVE logo is a registered trademark of The MITRE Corporation.

CVE Usage: MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE®). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy. ALL DOCUMENTS AND THE INFORMATION CONTAINED THEREIN PROVIDED BY MITRE ARE PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND.

NVD Terms of Use / CVE® Terms of Use / nvd.nist.gov / cve.org