wolfSSL w wersjach 5.x przed 5.1.1 używa przewidywalnych (nielosowych) wartości wektora inicjalizacji (IV) podczas szyfrowania w trybie AES-CBC lub DES3 dla protokołów TLS 1.1/1.2 oraz DTLS 1.1/1.2. Podatność ta poważnie osłabia poufność przesyłanych danych, umożliwiając atakującemu analizę lub odtworzenie zaszyfrowanego ruchu sieciowego.
▸ Pokaż oryginał (EN)
wolfSSL 5.x before 5.1.1 uses non-random IV values in certain situations. This affects connections (without AEAD) using AES-CBC or DES3 with TLS 1.1 or 1.2 or DTLS 1.1 or 1.2. This occurs because of misplaced memory initialization in BuildMessage in internal.c.
Błąd wynika z nieprawidłowo umieszczonej inicjalizacji pamięci w funkcji BuildMessage w pliku internal.c biblioteki wolfSSL. W wyniku tej pomyłki wartości IV, które powinny być generowane losowo dla każdej wiadomości, w rzeczywistości nie są właściwie inicjalizowane i mogą być przewidywalne lub powtarzalne. Dotyczy to wyłącznie połączeń bez AEAD (bez trybu uwierzytelnionego szyfrowania), korzystających z szyfrów AES-CBC lub DES3.
Atakujący obserwujący ruch sieciowy może wykorzystać przewidywalne wartości IV do kryptoanalitycznych ataków na zaszyfrowane połączenia, co zagraża poufności i integralności transmitowanych danych.
Należy zaktualizować wolfSSL do wersji 5.1.1 lub nowszej, wydanej 3 stycznia 2022 roku. Szczegóły dostępne w oficjalnym ChangeLog producenta oraz w pull request #4710 na repozytorium GitHub wolfSSL.
wolfSSL w wersjach 5.x przed 5.1.1, przy połączeniach bez AEAD używających AES-CBC lub DES3 z TLS 1.1, TLS 1.2, DTLS 1.1 lub DTLS 1.2.
Podatność została naprawiona w wersji 5.1.1 wydanej 3 stycznia 2022 roku, zgodnie z oficjalnym ChangeLog projektu wolfSSL.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:NWolfssl
APPWolfssl5.0.0 – 5.1.1 (bez)
Powiązane podatności
WolfSSL: nieprawidłowa weryfikacja rozmiaru skrótu w certyfikatach ECDSA
WolfSSL: odczyt poza granicami bufora w funkcji MatchDomainName()
WolfSSL TLS 1.3: przewidywalny klucz sesji przez brak PSK/KSE
wolfSSL: heap buffer over-read przy włączonej fladze WOLFSSL_CALLBACKS
wolfSSL: brak weryfikacji numeru seryjnego w odpowiedzi OCSP