Release of OpenSSL 3.6.0 with EVP_SKEY support and buffer overflow fixes

The release of OpenSSL 3.6.0 has occurred, offering the implementation of SSL/TLS protocols and various encryption algorithms. OpenSSL 3.6 is classified as a standard-support release, with updates being issued for 13 months. Support for previous branches OpenSSL 3.5 LTS, 3.4, 3.3, 3.2, and 3.0 LTS will last until April 2030, October 2026, April 2026, November 2025, and September 2026, respectively. The project's code is distributed under the Apache 2.0 license.

Key innovations:

  • Support for the EVP_SKEY structure (Symmetric KEY) has been added to represent symmetric keys as opaque objects. Unlike raw keys represented as byte arrays, the EVP_SKEY structure abstracts the key and contains additional metadata. Usage of EVP_SKEY is permitted in encryption functions, key exchange, and key derivation functions (KDF). Functions EVP_KDF_CTX_set_SKEY(), EVP_KDF_derive_SKEY(), and EVP_PKEY_derive_SKEY() have been added for working with EVP_SKEY keys.
  • Support for digital signature verification based on the LMS (Leighton-Micali Signatures) scheme has been added, utilizing hash functions and tree hashing in the form of a Merkle Tree (each branch verifies all underlying branches and nodes). LMS digital signatures are resistant to key search on quantum computers and are designed to ensure the integrity of firmware and applications.
  • Support for NIST security categories for PKEY object parameters (public and private keys) has been added. The security category is set through the "security-category" setting. A function EVP_PKEY_get_security_category() has been added to check the security level. The security level reflects resistance to key search on quantum computers and can take integer values from 0 to 5:
    • 0 — implementation not resistant to being broken on quantum computers;
    • 1/3/5 — implementation does not rule out the search for a key on a quantum computer in a block cipher with a 128/192/256-bit key;
    • 2/4 — implementation does not rule out the search for collisions in a 256/384-bit hash on a quantum computer.
  • The "openssl configutl" command has been added for processing the configuration file. The utility allows the formation of a summary file with all settings based on a multi-file configuration with include directives.
  • The FIPS cryptoprovider now supports deterministic generation of ECDSA digital signatures (the same signature is generated for the same inputs), in accordance with the requirements of the FIPS 186-5 standard.
  • The requirements for the build environment have been raised. It is no longer sufficient to have ANSI-C compliant tools for building OpenSSL; a compiler compatible with the C-99 standard is now required.
  • Functions related to the EVP_PKEY_ASN1_METHOD structure have been deprecated.
  • Support for the VxWorks platform has been discontinued.

Fixed vulnerabilities:

  • CVE-2025-9230 — a vulnerability in the CMS message decryption code, encrypted using a password (PWRI). This vulnerability may lead to writing and reading data outside the allocated buffer, which can trigger an application crash or memory corruption in applications using OpenSSL to process CMS messages. The risk of exploitation for arbitrary code execution is mitigated by the fact that CMS message encryption using a password is extremely rare in practice. This vulnerability has been fixed in versions OpenSSL 3.6.0, 3.5.4, 3.4.3, 3.3.5, 3.2.6, and 3.0.18. The issue has also been corrected in LibreSSL library updates 4.0.1 and 4.1.1, developed by the OpenBSD project.
  • CVE-2025-9231 — the implementation of the SM2 algorithm is vulnerable to side-channel attacks, allowing the recreation of the private key on systems with 64-bit ARM CPUs by analyzing the execution time variations of individual calculations. This attack could potentially be conducted remotely. The risk is somewhat reduced as OpenSSL does not directly support the use of SM2 key certificates in TLS.
  • CVE-2025-9232 — a vulnerability in the built-in HTTP client implementation, leading to reading data from outside the buffer when processing specially crafted URLs in HTTP Client functions. This issue only manifests when the 'no_proxy' environment variable is set and can lead to application termination.

Source: opennet.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster