CVE-2026-31790: OpenSSL uninitialized memory disclosure in RSASVE key encapsulation

CVE-2026-31790 · Severity: high · CVSS 7.5 · Published 2026-04-07

OpenSSL is a widely used security library that helps protect data sent over the internet. A flaw in how it handles certain encryption keys could allow an attacker to trick a server into sending back pieces of its own memory instead of encrypted data. This could lead to the exposure of sensitive information, such as passwords or private keys, from the server's previous operations.

Technologies: Siemens SIMATIC CN 4100. Vendors: Siemens.

Quick answers

Is CVE-2026-31790 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-31790 being exploited in the wild.
How severe is CVE-2026-31790?
High severity, with a CVSS score of 7.5, published 7 April 2026.
Which products and versions are affected?
Siemens SIMATIC CN 4100 before V5.0.
Is there a fix for CVE-2026-31790?
A patch was published on 2026-04-06: Fixes committed to OpenSSL repository Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-31790 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-31790?
Check whether you run Siemens SIMATIC CN 4100 at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

Technical details

A vulnerability exists in OpenSSL's RSASVE key encapsulation mechanism (KEM) where the `RSA_public_encrypt()` return value is incorrectly validated. The function returns the number of bytes written on success and -1 on failure, but the affected code only checked if the return value was non-zero. If an attacker provides an invalid RSA public key that causes encryption to fail, the `EVP_PKEY_encapsulate()` function may still report success while leaving the ciphertext buffer populated with uninitialized or stale memory contents. This leads to information disclosure of sensitive data from the application process. The issue affects OpenSSL versions 3.0 through 3.6 and has been patched in versions 3.6.2, 3.5.6, 3.4.5, and 3.3.7.

Affected products

  • OpenSSL OpenSSL 3.6.0 to 3.6.1, 3.5.0 to 3.5.5, 3.4.0 to 3.4.4, 3.3.0 to 3.3.6, 3.1.0 to 3.1.7, 3.0.0 to 3.0.15
  • Siemens SIMATIC CN 4100 before V5.0

Timeline

  • 2026-04-06: patched: Fixes committed to OpenSSL repository
  • 2026-04-07: advisory: OpenSSL Security Advisory published
  • 2026-04-07: disclosed

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.