CVE-2024-12797

Description

A flaw was found in OpenSSL's RFC7250 Raw Public Key (RPK) authentication. This vulnerability allows man-in-the-middle (MITM) attacks via failure to abort TLS/DTLS handshakes when the server's RPK does not match the expected key despite the SSL_VERIFY_PEER verification mode being set.

Statement

This issue was introduced in the initial implementation of RPK support in OpenSSL 3.2, which was first shipped in RHEL 9.5. Earlier releases of OpenSSL provided in RHEL prior to 9.5 are not affected.

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.

rhel9/ruby-33 & ubi9/ruby-33 are not affected because RPK is not present in any form or as any function that could be called from Ruby via Red Hat supported RPMs in RHEL. For example the SSL_dane_enable or SSL_add_expected_rpk or X509_STORE_CTX_get0_rpk or X509_STORE_CTX_init_rpk (and more rpk-related) functions are not callable from Ruby.

Mitigation

Mitigation for this issue is either not available or the currently available options do not meet the Red Hat Product Security criteria comprising ease of use and deployment, applicability to widespread installation base or stability.

Common Vulnerability Scoring System (CVSS) Score Details

Info alert:Important note

CVSS scores for open source components depend on vendor-specific factors (e.g. version or build chain). Therefore, Red Hat's score and impact rating can be different from NVD and other vendors. Red Hat remains the authoritative CVE Naming Authority (CNA) source for its products and services (see Red Hat classifications).

CVSS v3 Score Breakdown

Red HatNVDcve.org
Base Score7.4N/A6.3
Attack VectorNetworkN/ANetwork
Attack ComplexityHighN/ALow
Privileges RequiredNoneN/ANone
User InteractionNoneN/ARequired
ScopeUnchangedN/AUnchanged
ConfidentialityHighN/ALow
Integrity ImpactHighN/ALow
Availability ImpactNoneN/ALow

Vector

Red Hat: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N

cve.org: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:L

Understanding the Weakness (CWE)

Integrity,Authentication

Technical Impact: Bypass Protection Mechanism; Gain Privileges or Assume Identity

When a certificate is invalid or malicious, it might allow an attacker to spoof a trusted entity by interfering in the communication path between the host and client. The product might connect to a malicious host while believing it is a trusted host, or the product might be deceived into accepting spoofed data that appears to originate from a trusted host.

Frequently Asked Questions

Want to get errata notifications? Sign up here.