OpenSSL 3.0.1-opdatering løser sårbarhed

Korrigerende udgivelser af OpenSSL kryptografiske bibliotek 3.0.1 og 1.1.1m er tilgængelige. Version 3.0.1 rettet sårbarheden (CVE-2021-4044), og omkring et dusin fejl blev rettet i begge udgivelser.

Sårbarheden eksisterer i implementeringen af ​​SSL/TLS-klienter og er relateret til, at libssl-biblioteket forkert håndterer negative fejlkoder, der returneres af X509_verify_cert()-funktionen, kaldet for at verificere certifikatet, der er sendt til klienten af ​​serveren. Negative koder returneres, når der opstår interne fejl, for eksempel hvis hukommelse ikke kan allokeres til bufferen. Hvis en sådan fejl returneres, vil efterfølgende kald til I/O-funktioner såsom SSL_connect() og SSL_do_handshake() returnere fejl og en SSL_ERROR_WANT_RETRY_VERIFY fejlkode, som kun skal returneres, hvis applikationen tidligere har foretaget et kald til SSL_CTX_set_cert_verify_callback().

Da de fleste applikationer ikke kalder SSL_CTX_set_cert_verify_callback(), kan forekomsten af ​​en SSL_ERROR_WANT_RETRY_VERIFY fejl misfortolkes og resultere i et nedbrud, en loop eller et andet forkert svar. Problemet er mest farligt i kombination med en anden fejl i OpenSSL 3.0, som forårsager en intern fejl ved behandling af certifikater i X509_verify_cert() uden udvidelsen "Subject Alternative Name", men med navnebindinger i brugsbegrænsninger. I dette tilfælde kan angrebet føre til applikationsspecifikke anomalier i certifikathåndtering og TLS-sessionsetablering.

Kilde: opennet.ru

Tilføj en kommentar