wolfSSL w wersjach 4.6.x–4.7.x przed 4.8.0 nie zgłasza błędu, gdy numer seryjny certyfikatu w żądaniu OCSP różni się od numeru seryjnego w odpowiedzi OCSP. Podatność umożliwia obejście mechanizmu weryfikacji odwołania certyfikatów, co może prowadzić do akceptacji nieważnych lub odwołanych certyfikatów.
▸ Pokaż oryginał (EN)
wolfSSL 4.6.x through 4.7.x before 4.8.0 does not produce a failure outcome when the serial number in an OCSP request differs from the serial number in the OCSP response.
Protokół OCSP (Online Certificate Status Protocol) służy do sprawdzania, czy dany certyfikat nie został odwołany. Biblioteka wolfSSL nieprawidłowo obsługuje odpowiedź OCSP — nie weryfikuje, czy numer seryjny certyfikatu zawarty w odpowiedzi odpowiada numerowi seryjnemu z wysłanego żądania. Atakujący może dostarczyć odpowiedź OCSP dotyczącą innego certyfikatu (np. ważnego), przez co biblioteka błędnie uzna weryfikowany certyfikat za prawidłowy, nawet jeśli jest on odwołany.
Atakujący może skutecznie ominąć weryfikację odwołania certyfikatów TLS, co umożliwia przeprowadzenie ataku man-in-the-middle przy użyciu odwołanego certyfikatu oraz potencjalnie przejęcie kontroli nad bezpieczną komunikacją (naruszenie poufności, integralności i dostępności).
Należy zaktualizować bibliotekę wolfSSL do wersji 4.8.0 lub nowszej. Poprawka została wprowadzona w wydaniu v4.8.0-stable dostępnym w oficjalnym repozytorium producenta na GitHub.
wolfSSL w wersjach 4.6.x oraz 4.7.x przed wersją 4.8.0
Poprawka dostępna w pull requeście #3990 w repozytorium GitHub wolfSSL oraz w wydaniu v4.8.0-stable.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HWolfssl
APPWolfssl4.6.0 – 4.8.0 (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: nielosowe wartości IV w połączeniach TLS/DTLS (AES-CBC, DES3)