Security Resilience

CVE-2026-31789

Memory Safety in Openssl 3.0.0 – 3.0.20

Published
07 April 2026
Modified
24 July 2026
Patch / advisory
CVSS Score v3.1 9.8
Click a component to see what it means
Raw vectorCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
EPSS Score 0.0024 14th percentile
Risk Priority 70 floored blend · peak EPSS

CVSS and EPSS are reproduced from their sources (NVD, FIRST EPSS). Risk Priority is our own derived reading, not an NVD score.

Summary

CVE-2026-31789 is a critical-severity Out-of-bounds Write (CWE-787) vulnerability in Openssl Openssl. Its CVSS base score is 9.8 (Critical).

Operationally, exploitation aligns with the MITRE ATT&CK technique Security Account Manager (T1003.002); ranked at the 14th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog.

The strongest mitigations our analysis identified map to SA-11 (Developer Testing and Evaluation) and SA-15 (Development Process, Standards, and Tools) — see the control section below for these in your framework.

Deeper analysis AI-assisted summary

Synthesised by an AI model from the NVD description and linked references — a reading aid, not an authoritative source.

CVE-2026-31789 is a heap buffer overflow vulnerability in OpenSSL, triggered when converting an excessively large OCTET STRING value from an X.509 certificate extension—such as the Subject Key Identifier (SKID) or Authority Key Identifier (AKID)—to a hexadecimal string on 32-bit platforms. The buffer size for the hexadecimal output is calculated by multiplying the input length by 3, which can overflow on 32-bit systems, resulting in allocation of an undersized buffer and a subsequent heap buffer overflow. Applications and services that print or log contents of untrusted X.509 certificates are vulnerable, while OpenSSL FIPS modules in versions 3.6, 3.5, 3.4, 3.3, and 3.0 are not affected as the issue lies outside the FIPS module boundary.

An attacker can exploit this vulnerability by supplying a crafted X.509 certificate containing an excessively large OCTET STRING value (over 1 Gigabyte) in the affected extensions. Any remote or local user who can provide such a certificate to a vulnerable application that processes, prints, or logs it—without prior validation of certificate size—could trigger the issue. Successful exploitation may cause a crash or potentially lead to attacker-controlled code execution or other undefined behavior, classified under CWE-787 (Out-of-bounds Write).

Mitigation requires applying patches from the OpenSSL repository, available via the following GitHub commits: https://github.com/openssl/openssl/commit/364f095b80601db632b0def6a33316967f863bde, https://github.com/openssl/openssl/commit/7a9087efd769f362ad9c0e30c7baaa6bbfa65ecf, https://github.com/openssl/openssl/commit/945b935ac66cc7f1a41f1b849c7c25adb5351f49, https://github.com/openssl/openssl/commit/a24216018e1ede8ff01a4ff5afff7dfbd443e2f9, and https://github.com/openssl/openssl/commit/a91e537d16d74050dbde50bb0dfb1fe9930f0521.

Although assigned a CVSS v3.1 score of 9.8 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H), the vulnerability received low severity due to its limitation to 32-bit platforms and the impractical requirement for certificates exceeding 1 Gigabyte in size, making printing or logging such certificates unlikely.

EU & UK References

Vulnerability Data

Issue summary: Converting an excessively large OCTET STRING value to a hexadecimal string leads to a heap buffer overflow on 32 bit platforms. Impact summary: A heap buffer overflow may lead to a crash or possibly an attacker controlled code…

more

execution or other undefined behavior. If an attacker can supply a crafted X.509 certificate with an excessively large OCTET STRING value in extensions such as the Subject Key Identifier (SKID) or Authority Key Identifier (AKID) which are being converted to hex, the size of the buffer needed for the result is calculated as multiplication of the input length by 3. On 32 bit platforms, this multiplication may overflow resulting in the allocation of a smaller buffer and a heap buffer overflow. Applications and services that print or log contents of untrusted X.509 certificates are vulnerable to this issue. As the certificates would have to have sizes of over 1 Gigabyte, printing or logging such certificates is a fairly unlikely operation and only 32 bit platforms are affected, this issue was assigned Low severity. The FIPS modules in 3.6, 3.5, 3.4, 3.3 and 3.0 are not affected by this issue, as the affected code is outside the OpenSSL FIPS module boundary.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise Techniques

T1003.002 Security Account Manager Credential Access
Adversaries may attempt to extract credential material from the Security Account Manager (SAM) database either through in-memory techniques or through the Windows Registry where the SAM database is stored.
T1003.004 LSA Secrets Credential Access
Adversaries with SYSTEM access to a host may attempt to access Local Security Authority (LSA) secrets, which can contain a variety of different credential materials, such as credentials for service accounts.
T1003.008 /etc/passwd and /etc/shadow Credential Access
Adversaries may attempt to dump the contents of <code>/etc/passwd</code> and <code>/etc/shadow</code> to enable offline password cracking.
T1006 Direct Volume Access Stealth
Adversaries may directly access a volume to bypass file access controls and file system monitoring.
T1007 System Service Discovery Discovery
Adversaries may try to gather information about registered local system services.
T1012 Query Registry Discovery
Adversaries may interact with the Windows Registry to gather information about the system, configuration, and installed software.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2023-6129Same product: Openssl Openssl
CVE-2024-20727Shared CWE-787
CVE-2023-21040Shared CWE-787
CVE-2023-32472Shared CWE-787
CVE-2025-20631Shared CWE-787
CVE-2020-14871Shared CWE-787
CVE-2024-39431Shared CWE-787
CVE-2025-5272Shared CWE-787
CVE-2023-49355Shared CWE-787
CVE-2023-33476Shared CWE-787

Affected Assets

openssl
openssl
3.0.0 — 3.0.20 · 3.3.0 — 3.3.7 · 3.4.0 — 3.4.5

Mitigating Controls

Mitigating Controls (NIST 800-53 r5) AI

Developer testing and evaluation (including fuzzing and bounds checks) finds out-of-bounds write flaws before deployment.

Requiring documented secure-development standards and tools can mandate bounds-checked coding practices that avoid the weakness.

Input validation can structurally reject or sanitize data that would otherwise trigger an out-of-bounds write.

Memory-protection mechanisms limit the exploitability and blast radius of a successful out-of-bounds write.

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

ID.RA-01 partial match
blocks

Vulnerability scanning and recording can discover out-of-bounds write flaws so they can be remediated.

PR.PS-02 partial match
blocks

Patching or replacing vulnerable software directly eliminates known instances of this coding weakness.

PR.PS-06 partial match
blocks

Secure-development practices (static analysis, bounds checking, code review) are the primary means of preventing out-of-bounds writes.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

removes
removes
removes
removes
removes

References