CyberAlerts is shutting down on June 30th, 2025. Thank you for your support!

CVE-2024-12797: RFC7250 handshakes with unauthenticated servers don't abort as expected

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.

Classification

CVE ID: CVE-2024-12797

Affected Products

Vendor: OpenSSL

Product: OpenSSL

Exploit Prediction Scoring System (EPSS)

EPSS Score: 0.05% (probability of being exploited)

EPSS Percentile: 18.37% (scored less or equal to compared to others)

EPSS Date: 2025-03-12 (when was this score calculated)

References

https://openssl-library.org/news/secadv/20250211.txt
https://github.com/openssl/openssl/commit/738d4f9fdeaad57660dcba50a619fafced3fd5e9
https://github.com/openssl/openssl/commit/87ebd203feffcf92ad5889df92f90bb0ee10a699
https://github.com/openssl/openssl/commit/798779d43494549b611233f92652f0da5328fbe7

Timeline