Incorrect Calculation of Buffer Size Affecting rustup package, versions <1.29.0-r5


Severity

Recommended
0.0
critical
0
10

Snyk's Security Team recommends NVD's CVSS assessment. Learn more

Threat Intelligence

EPSS
0.06% (19th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-WOLFILATEST-RUSTUP-16333930
  • published1 May 2026
  • disclosed24 Apr 2026

Introduced: 24 Apr 2026

NewCVE-2026-41676  (opens in a new tab)
CWE-131  (opens in a new tab)
CWE-787  (opens in a new tab)

How to fix?

Upgrade Wolfi rustup to version 1.29.0-r5 or higher.

NVD Description

Note: Versions mentioned in the description apply only to the upstream rustup package and not the rustup package as distributed by Wolfi. See How to fix? for Wolfi relevant fixed versions and status.

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.

CVSS Base Scores

version 3.1