CVE-2024-12797

Name
CVE-2024-12797
Description
Issue summary: Clients using RFC7250 Raw Public Keys (RPKs) to authenticate a server may fail to notice that the server was not authenticated, because handshakes don't abort as expected when the SSL_VERIFY_PEER verification mode is set. Impact summary: TLS and DTLS connections using raw public keys may be vulnerable to man-in-middle attacks when server authentication failure is not detected by clients. RPKs are disabled by default in both TLS clients and TLS servers. The issue only arises when TLS clients explicitly enable RPK use by the server, and the server, likewise, enables sending of an RPK instead of an X.509 certificate chain. The affected clients are those that then rely on the handshake to fail when the server's RPK fails to match one of the expected public keys, by setting the verification mode to SSL_VERIFY_PEER. Clients that enable server-side raw public keys can still find out that raw public key verification failed by calling SSL_get_verify_result(), and those that do, and take appropriate action, are not affected. This issue was introduced in the initial implementation of RPK support in OpenSSL 3.2. The FIPS modules in 3.4, 3.3, 3.2, 3.1 and 3.0 are not affected by this issue.
NVD Severity
unknown
Other trackers
Mailing lists
Exploits
Forges
GitHub (code, issues), Aports (code, issues)

References

Type URI
patch https://github.com/openssl/openssl/commit/738d4f9fdeaad57660dcba50a619fafced3fd5e9
patch https://github.com/openssl/openssl/commit/798779d43494549b611233f92652f0da5328fbe7
patch https://github.com/openssl/openssl/commit/87ebd203feffcf92ad5889df92f90bb0ee10a699
vendor-advisory https://openssl-library.org/news/secadv/20250211.txt
af854a3a-2127-422b-91ae-364da2661108 http://www.openwall.com/lists/oss-security/2025/02/11/3
af854a3a-2127-422b-91ae-364da2661108 http://www.openwall.com/lists/oss-security/2025/02/11/4
af854a3a-2127-422b-91ae-364da2661108 https://security.netapp.com/advisory/ntap-20250214-0001/

Match rules

CPE URI Source package Min version Max version
openssl >= 3.4.0 < 3.4.1
openssl >= 3.3.0 < 3.3.3
openssl >= 3.2.0 < 3.2.4

Vulnerable and fixed packages

Source package Branch Version Maintainer Status
openssl edge-main 3.3.3-r0 Natanael Copa <ncopa@alpinelinux.org> fixed
openssl 3.21-main 3.3.3-r0 Natanael Copa <ncopa@alpinelinux.org> fixed
openssl 3.20-main 3.3.3-r0 Natanael Copa <ncopa@alpinelinux.org> fixed
openssl edge-main 3.3.2-r4 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
openssl edge-main 3.3.2-r5 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable
openssl edge-main 3.3.2-r6 Natanael Copa <ncopa@alpinelinux.org> possibly vulnerable