CVE-2026-42791
NiskieCVSS 3.7Streszczenie
Podatność związana z niewłaściwą walidacją certyfikatów w module pubkey_ocsp Erlang OTP pozwala na akceptację sfałszowanych odpowiedzi OCSP podpisanych przez wygasły certyfikat respondenta jako ważnych. Problem dotyczy weryfikacji odpowiedzi OCSP, która nie sprawdza okresu ważności certyfikatu respondenta.
Ocena ryzyka
Atakujący, posiadający prywatny klucz wygasłego certyfikatu OCSP, może sfałszować odpowiedzi OCSP, co prowadzi do akceptacji unieważnionych certyfikatów TLS przez klientów. Może to skutkować obejściem uwierzytelniania w aplikacjach korzystających z walidacji certyfikatów klienta.
Rekomendacja
Zaleca się aktualizację Erlang OTP do wersji 27.3.4.12, 28.5.0.1 lub 29.0.1, aby usunąć tę podatność. Należy również rozważyć dodatkowe mechanizmy walidacji certyfikatów w aplikacjach korzystających z OCSP.
Oryginalny opis (angielski, źródło NVD)
Improper Certificate Validation vulnerability in Erlang OTP public_key (pubkey_ocsp module) allows forged OCSP responses signed with an expired responder certificate to be accepted as valid. OCSP response verification in pubkey_ocsp:verify_response/5 and pubkey_ocsp:is_authorized_responder/3 in lib/public_key/src/pubkey_ocsp.erl does not check the validity period (notBefore/notAfter) of the OCSP responder certificate. An attacker who has obtained the private key of an expired CA-designated OCSP responder certificate can forge OCSP responses that Erlang/OTP accepts as valid. This affects TLS clients using OCSP stapling via the ssl application: a malicious or compromised server can present a revoked TLS certificate together with a forged OCSP response signed by an expired responder key, and the client will accept the revoked certificate as valid. It also affects applications calling public_key:pkix_ocsp_validate/5 directly, where the impact depends on the use case — server-side client certificate validation using this API may allow authentication bypass with a revoked client certificate. This issue affects OTP from OTP 27.0 before OTP 27.3.4.12, 28.5.0.1, and 29.0.1 corresponding to public_key from 1.16 before 1.17.1.3, 1.20.3.1, and 1.21.1.

