Description
Issue summary: A TLS server that calls SSL_set_SSL_CTX() to switch a
connection to a different SSL_CTX part way through a handshake may access
memory beyond the end of an internal array if the replacement context knows
about more provider signature algorithms than the context the connection was
created from. Applications which never call SSL_set_SSL_CTX() are not
affected.

Impact summary: A remote peer may be able to cause a small out-of-bounds
read, and in some circumstances a fixed-value out-of-bounds write, on the
server heap. This may lead to a Denial of Service.

CWE: CWE-787: Out-of-bounds Write

Description: A TLS connection records how many certificate slots it has
when it is created, taken from the SSL_CTX that created it: the built-in
certificate types plus one slot for each provider TLS-SIGALG entry that
context was aware of. That count sizes an internal array of per-slot
certificate validity flags.

An application may replace a connection's SSL_CTX part way through the
handshake by calling SSL_set_SSL_CTX(), most commonly from a servername
callback in order to serve a different virtual host. Doing so did not
refresh the recorded count. A provider signature algorithm's slot index is
its position in the list of whichever context resolves it, so if the
replacement context is aware of more of them than the original, an
algorithm offered by the peer can resolve to an index beyond the end of the
array. Processing the peer's signature algorithms then reads one four byte
word past the end for each such algorithm and, where the word read is zero,
writes a fixed value over it. A peer offering many of them can corrupt heap
metadata and abort the process.

Only provider signature algorithms which occupy one of the excess slots,
and which the server also has configured, have this effect. Codepoints the
replacement context does not recognise are discarded without being resolved
to a slot, and provider signature algorithms are usable only from TLS 1.3.

The two contexts must therefore be aware of different numbers of provider
signature algorithms, which requires separate library contexts, a provider
loaded between the two being created, or providers which differ in what
they advertise - in 4.0, for example, the default provider advertises SM2
where the FIPS provider does not. A deployment meeting the condition is
also unable to negotiate the affected algorithms with legitimate clients,
since the same stale count hides the corresponding certificates, so the
misconfiguration is likely to be noticed. For that reason, and because the
configuration is not the default, this issue has been assessed as Low
severity.

FIPS impact: no
No FIPS modules are affected by this issue as the affected code is outside
the OpenSSL FIPS module boundary.
Published: 2026-09-29
Score: 7.5 High
EPSS: < 1% Very Low
KEV: No
Impact: Denial of Service
Action: Patch Required
AI Analysis

Impact

A TLS server that switches contexts during a handshake by calling SSL_set_SSL_CTX can end up accessing memory beyond an internal array when the new context knows more provider signature algorithms than the original. This mismatch allows a remote attacker to trigger a small out‑of‑bounds read and, in certain cases, a fixed‑value write on the heap, potentially corrupting heap metadata and aborting the process. The primary consequence is a denial of service because the server crashes.

Affected Systems

The vulnerability affects installations of the OpenSSL library where SSL_set_SSL_CTX is used, typically in servername callbacks that serve virtual hosts. Any OpenSSL build that supports provider signature algorithms and can change contexts during a handshake is subject, regardless of the OpenSSL version because the condition depends on the configuration and presence of multiple provider contexts.

Risk and Exploitability

The CVSS score of 7.5 indicates moderate severity, and the EPSS score is not available; the issue is not listed in CISA’s KEV catalog. Exploitation requires a client that advertises many provider signature algorithms and the ability to trigger a context switch, so the attack vector is through a normal TLS handshake. Although not a default misconfiguration, honest deployments that satisfy the condition are likely to notice the problem due to failed negotiations, lowering the likelihood of widespread exploitation, yet the potential for denial of service remains.

Generated by OpenCVE AI on September 30, 2026 at 01:13 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade the OpenSSL library to a version that incorporates the latest patch for CVE-2026-72897.
  • If an upgrade is not immediately possible, avoid changing the SSL_CTX during a handshake; keep the original context or ensure the replacement context has an identical set of provider signature algorithms.
  • Verify that any providers loaded into the contexts advertise the same signature algorithm set to prevent the out‑of‑bounds condition.

Generated by OpenCVE AI on September 30, 2026 at 01:13 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DSA Debian DSA DSA-6531-1 openssl security update
Ubuntu USN Ubuntu USN USN-8847-1 OpenSSL vulnerabilities
History

Thu, 08 Oct 2026 01:30:00 +0000

Type Values Removed Values Added
CPEs cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*

Wed, 30 Sep 2026 00:15:00 +0000

Type Values Removed Values Added
References
Metrics threat_severity

None

threat_severity

Moderate


Tue, 29 Sep 2026 18:30:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H'}

ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Tue, 29 Sep 2026 17:45:00 +0000

Type Values Removed Values Added
First Time appeared Openssl
Openssl openssl
Vendors & Products Openssl
Openssl openssl

Tue, 29 Sep 2026 15:45:00 +0000

Type Values Removed Values Added
Description Issue summary: A TLS server that calls SSL_set_SSL_CTX() to switch a connection to a different SSL_CTX part way through a handshake may access memory beyond the end of an internal array if the replacement context knows about more provider signature algorithms than the context the connection was created from. Applications which never call SSL_set_SSL_CTX() are not affected. Impact summary: A remote peer may be able to cause a small out-of-bounds read, and in some circumstances a fixed-value out-of-bounds write, on the server heap. This may lead to a Denial of Service. CWE: CWE-787: Out-of-bounds Write Description: A TLS connection records how many certificate slots it has when it is created, taken from the SSL_CTX that created it: the built-in certificate types plus one slot for each provider TLS-SIGALG entry that context was aware of. That count sizes an internal array of per-slot certificate validity flags. An application may replace a connection's SSL_CTX part way through the handshake by calling SSL_set_SSL_CTX(), most commonly from a servername callback in order to serve a different virtual host. Doing so did not refresh the recorded count. A provider signature algorithm's slot index is its position in the list of whichever context resolves it, so if the replacement context is aware of more of them than the original, an algorithm offered by the peer can resolve to an index beyond the end of the array. Processing the peer's signature algorithms then reads one four byte word past the end for each such algorithm and, where the word read is zero, writes a fixed value over it. A peer offering many of them can corrupt heap metadata and abort the process. Only provider signature algorithms which occupy one of the excess slots, and which the server also has configured, have this effect. Codepoints the replacement context does not recognise are discarded without being resolved to a slot, and provider signature algorithms are usable only from TLS 1.3. The two contexts must therefore be aware of different numbers of provider signature algorithms, which requires separate library contexts, a provider loaded between the two being created, or providers which differ in what they advertise - in 4.0, for example, the default provider advertises SM2 where the FIPS provider does not. A deployment meeting the condition is also unable to negotiate the affected algorithms with legitimate clients, since the same stale count hides the corresponding certificates, so the misconfiguration is likely to be noticed. For that reason, and because the configuration is not the default, this issue has been assessed as Low severity. FIPS impact: no No FIPS modules are affected by this issue as the affected code is outside the OpenSSL FIPS module boundary.
Title Out-of-Bounds Access After SSL_set_SSL_CTX() During a Handshake
Weaknesses CWE-787
References

cve-icon MITRE

Status: PUBLISHED

Assigner: openssl

Published:

Updated: 2026-09-29T17:16:38.842Z

Reserved: 2026-08-10T17:02:46.613Z

Link: CVE-2026-72897

cve-icon Vulnrichment

Updated: 2026-09-29T17:16:22.301Z

cve-icon NVD

Status : Analyzed

Published: 2026-09-29T16:17:09.903

Modified: 2026-10-08T01:19:41.567

Link: CVE-2026-72897

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-09-29T15:32:18Z

Links: CVE-2026-72897 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-09-30T01:15:04Z

Weaknesses