CVE-2026-89422
>_ Opis
Tłumaczenie automatyczne – może zawierać nieścisłości.
Luka w zabezpieczeniach dotycząca wymiany kluczy bez uwierzytelniania jednostki w Erlang/OTP ssl umożliwia partnerowi, który odpowie na połączenie klienta TLS 1.3, podszywanie się pod zamierzony serwer. Rozszerzenie pre_shared_key w ServerHello, którego klient nigdy nie oferował, powoduje, że klient kończy uzgadnianie bez sprawdzania certyfikatu serwera, więc ssl:connect zwraca {ok, Socket} w przypadku partnera nieposiadającego certyfikatu, klucza prywatnego ani wcześniejszej sesji.
tls_client_connection_1_3:handle_server_hello/2 przekazuje otrzymane rozszerzenie do tls_gen_connection_1_3:handle_resumption/2, które ustawia resumption = true na samą jego obecność bez sprawdzania, czy klient zaoferował PSK. Tymczasem tls_handshake_1_3:get_pre_shared_key/4 powraca do zerowej wartości „no PSK” i kluczuje uzgadnianie za pomocą zwykłego harmonogramu innego niż PSK, więc wystarczy własny klucz tymczasowy atakującego. Flaga wznowienia kieruje następnie Maybe_resumption/1 prosto do wait_finished, pomijając stany obsługi certyfikatów, więc sprawdzanie ścieżki certyfikatu, weryfikacja_zabawy, weryfikacja nazwy hosta, częściowy_łańcuch, sprawdzanie CRL i zszywanie OCSP są pomijane. Ma to wpływ na domyślną konfigurację klienta; klienci ograniczeni do protokołu TLS 1.2 nie są.
Ten problem dotyczy OTP z OTP 22.2 przed OTP 27.3.4.18, OTP 28.5.0.7 i OTP 29.1.1, co odpowiada ssl z wersji 9.5 przed 11.2.12.13, 11.6.0.6 i 11.7.7.
>_ Słabości (CWE)
>_ Referencje
- https://cna.erlef.org/cves/CVE-2026-89422.html
- https://github.com/erlang/otp/commit/21b8a1b0ad0adf200682b3854bc50114ab2b8c62
- https://github.com/erlang/otp/commit/98c66c858113949c4262d26cd7d426c4b09d2b35
- https://github.com/erlang/otp/commit/afec5156361bb50d3607c7c1a453c19b9149b324
- https://github.com/erlang/otp/commit/fd1d9d07fc92ec0d59f96dfb66182195882bb7dd
- https://github.com/erlang/otp/security/advisories/GHSA-rgxr-4g4w-j875
- https://osv.dev/vulnerability/EEF-CVE-2026-89422
- https://www.erlang.org/doc/system/versions.html#order-of-versions
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