CVE Vulnerabilities

CVE-2026-34180

Out-of-bounds Read

Published: Jun 09, 2026 | Modified: Jun 17, 2026
CVSS 3.x
N/A
Source:
NVD
CVSS 2.x
RedHat/V2
RedHat/V3
5 LOW
CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:L/I:N/A:H
Ubuntu
LOW
root.io logo minimus.io logo echo.ai logo

Issue summary: Parsing a crafted DER-encoded ASN.1 structure with a primitive element whose content exceeds 2 gigabytes in length may cause a heap buffer over-read on 64-bit Unix and Unix-like platforms.

Impact summary: The heap buffer over-read may crash the application (Denial of Service) or to load into the decoded ASN.1 object contents of memory beyond the end of the input buffer. More typically such ASN.1 elements would instead be truncated.

An integer truncation in OpenSSLs ASN.1 decoder causes the content length of an ASN.1 primitive element to be mishandled when it exceeds 2 gigabytes. In the worst case the truncated length is treated as a request to scan the binary content for a terminating zero byte, possibly causing OpenSSL to read either less than or beyond the end of the allocated buffer.

Applications that pass attacker-supplied data to d2i_X509(), d2i_PKCS7(), or any other d2i_* decoding function are affected. OpenSSLs own command-line tools are not vulnerable, as data read through the BIO layer is checked before it reaches the affected code. The issue only affects 64-bit Unix and Unix-like platforms; 32-bit platforms and 64-bit Windows are not affected.

The FIPS modules in 4.0, 3.6, 3.5, 3.4 and 3.0 are not affected by this issue, as the affected code is outside the OpenSSL FIPS module boundary.

Weakness

The product reads data past the end, or before the beginning, of the intended buffer.

Affected Software

NameVendorStart VersionEnd Version
OpensslOpenssl1.0.2 (including)1.0.2zq (excluding)
OpensslOpenssl1.1.1 (including)1.1.1zh (excluding)
OpensslOpenssl3.0.0 (including)3.0.21 (excluding)
OpensslOpenssl3.4.0 (including)3.4.6 (excluding)
OpensslOpenssl3.5.0 (including)3.5.7 (excluding)
OpensslOpenssl3.6.0 (including)3.6.3 (excluding)
OpensslOpenssl4.0.0 (including)4.0.0 (including)
Red Hat Enterprise Linux 10RedHatopenssl-1:3.5.5-4.el10_2*
Red Hat Enterprise Linux 9RedHatopenssl-1:3.5.5-4.el9_8*
Red Hat Enterprise Linux 9RedHatopenssl-1:3.5.5-4.el9_8*
Red Hat Discovery 2RedHatdiscovery/discovery-server-rhel9:1782159791*
Red Hat Discovery 2RedHatdiscovery/discovery-ui-rhel9:1782166952*
Red Hat Update Infrastructure 5RedHatrhui5/cds-rhel9:1781525684*
Red Hat Update Infrastructure 5RedHatrhui5/haproxy-rhel9:1781525671*
Red Hat Update Infrastructure 5RedHatrhui5/installer-rhel9:1781525693*
Red Hat Update Infrastructure 5RedHatrhui5/rhua-rhel9:1781525739*
NodejsUbuntuesm-apps/jammy*
NodejsUbuntujammy*
OpensslUbuntudevel*
OpensslUbuntuesm-infra-legacy/trusty*
OpensslUbuntuesm-infra-legacy/xenial*
OpensslUbuntuesm-infra/bionic*
OpensslUbuntuesm-infra/focal*
OpensslUbuntufips-preview/jammy*
OpensslUbuntufips-updates/bionic*
OpensslUbuntufips-updates/focal*
OpensslUbuntufips-updates/jammy*
OpensslUbuntufips/bionic*
OpensslUbuntufips/focal*
OpensslUbuntujammy*
OpensslUbuntunoble*
OpensslUbuntuquesting*
OpensslUbunturesolute*
Openssl1.0Ubuntuesm-infra/bionic*

Potential Mitigations

  • Assume all input is malicious. Use an “accept known good” input validation strategy, i.e., use a list of acceptable inputs that strictly conform to specifications. Reject any input that does not strictly conform to specifications, or transform it into something that does.
  • When performing input validation, consider all potentially relevant properties, including length, type of input, the full range of acceptable values, missing or extra inputs, syntax, consistency across related fields, and conformance to business rules. As an example of business rule logic, “boat” may be syntactically valid because it only contains alphanumeric characters, but it is not valid if the input is only expected to contain colors such as “red” or “blue.”
  • Do not rely exclusively on looking for malicious or malformed inputs. This is likely to miss at least one undesirable input, especially if the code’s environment changes. This can give attackers enough room to bypass the intended validation. However, denylists can be useful for detecting potential attacks or determining which inputs are so malformed that they should be rejected outright.
  • To reduce the likelihood of introducing an out-of-bounds read, ensure that you validate and ensure correct calculations for any length argument, buffer size calculation, or offset. Be especially careful of relying on a sentinel (i.e. special character such as NUL) in untrusted inputs.

References