CVE Catalog

CVE-2026-41676

HighCVSS 7.5
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.30%

22th percentile - higher than 22% of all known CVEs

Summary

In rust-openssl versions 0.9.27 through 0.10.77, a heap/stack overflow vulnerability exists in Deriver::derive and PkeyCtxRef::derive functions. On OpenSSL 1.1.x, EVP_PKEY_derive ignores the provided buffer size and writes the full shared secret, causing overflow even from safe Rust code.

Risk Assessment

An attacker could exploit this vulnerability to cause application crashes or potentially achieve remote code execution via memory overflow, posing a serious threat to system integrity and availability.

Recommendation

Immediately update rust-openssl to version 0.10.78 or later. If using OpenSSL 1.1.x, consider migrating to OpenSSL 3.x which is not affected by this issue.

Other vulnerabilities in rust-openssl

See all
Original NVD description (English source)

rust-openssl provides OpenSSL bindings for the Rust programming language. From 0.9.27 to before 0.10.78, Deriver::derive (and PkeyCtxRef::derive) sets len = buf.len() and passes it as the in/out length to EVP_PKEY_derive, relying on OpenSSL to honor it. On OpenSSL 1.1.x, X25519, X448, DH and HKDF-extract ignore the incoming *keylen, unconditionally writing the full shared secret (32/56/prime-size bytes). A caller passing a short slice gets a heap/stack overflow from safe code. OpenSSL 3.x providers do check, so this only impacts older OpenSSL. This vulnerability is fixed in 0.10.78.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS