CVE-2026-94418
>_ Opis
Tłumaczenie automatyczne – może zawierać nieścisłości.
W obszarze WOLFSSL_SMALL_CERT_VERIFY funkcja ProcessPeerCertParse() uruchamia sprawdzanie podpisu certyfikatu oddzielnie od analizy, aby ograniczyć pamięć szczytową, a następnie łączy oba wyniki, ale scala wynik podpisu z powrotem dopiero wtedy, gdy analiza zwróciła 0, więc każdy błąd analizy go ukrył. Funkcja ParseCertRelative() osiąga kontrolę daty ważności, ograniczenia nazwy i rozszerzenia krytycznego dopiero po przejściu funkcjiConfirmSignature(), więc podzielenie sprawdzania podpisu odwraca pierwszeństwo, co sprawia, że „przesłonięcie błędów dat” jest rozsądną polityką, a ASN_SIG_CONFIRM_E nigdy się nigdzie nie pojawia. Osoba atakująca nie potrzebuje żadnego klucza z prawdziwej infrastruktury PKI ani kompromisu urzędu certyfikacji: wystarczą samodzielnie wykonany certyfikat zawierający oczekiwaną nazwę podmiotu, podmiot zaufanego urzędu certyfikacji jako wystawcę, dowolne bajty, do których trafia podpis, okno ważności w przeszłości i własna para kluczy atakującego. Kompilacje, których to dotyczy, definiują WOLFSSL_SMALL_CERT_VERIFY, która jest domyślnie wyłączona, nie jest ustawiona domyślnie przez żadną platformę lub ustawiony nagłówek i nie jest osiągalna z żadnej opcji CMake; trasy autotools to --enable-lowresource, --enable-leantls, --enable-tinytls13=cert i --enable-tinytls13=mutualauth, a przykłady/configs/user_settings_embedded.h dociera do niego przez WC_CFG_SMALL_CERT_VERIFY, który jest dostarczany jako 0, podczas gdy ani --enable-all, ani --enable-distro nie włącza tego na wszystko. Aplikacja musi dodatkowo zainstalować funkcję zwrotną weryfikacji poprzez wolfSSL_CTX_set_verify() lub wolfSSL_set_verify() z funkcją WOLFSSL_VERIFY_PEER, która zwraca 1 dla ASN_BEFORE_DATE_E lub ASN_AFTER_DATE_E; wolfSSL dostarcza dokładnie ten kształt jako myVerify() w wolfssl/test.h pod VERIFY_OVERRIDE_DATE_ERR, który przykłady/klient wybiera -D. Aplikacja bez wywołania zwrotnego lub której wywołanie zwrotne zwraca wstępnie weryfikację pod kątem błędów daty, w dalszym ciągu nie powiedzie się podczas uzgadniania, a funkcje wolfSSL_CertManagerVerifyBuffer() i wc_CheckCertSignature() zgłaszają poprawnie ASN_SIG_CONFIRM_E w tym samym pliku binarnym. Na TLS 1.2 i TLS 1.3 wpływa to w obu kierunkach, a DTLS osiąga tę samą funkcję; gdzie sfałszowany certyfikat jest certyfikatem łańcuchowym, zgoda wywołania zwrotnego powoduje jego buforowanie w menedżerze certyfikatów WOLFSSL_CTX, zatem ujawnione wdrożenie musi zrestartować kontekst lub proces, a nie tylko ponownie się połączyć.
>_ 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