Vulnerability Description
rust-openssl provides OpenSSL bindings for the Rust programming language. From to before 0.10.78, aes::unwrap_key() contains an incorrect assertion: it checks that out.len() + 8 <= in_.len(), but this condition is reversed. The intended invariant is out.len() >= in_.len() - 8, ensuring the output buffer is large enough. Because of the inverted check, the function only accepts buffers at or below the minimum required size and rejects larger ones. If a smaller buffer is provided the function will write past the end of out by in_.len() - 8 - out.len() bytes, causing an out-of-bounds write from a safe public function. This vulnerability is fixed in 0.10.78.
CVSS Score
CRITICAL
Affected Products
| Vendor | Product | Versions |
|---|---|---|
| Rust-Openssl Project | Rust-Openssl | >= 0.10.24, < 0.10.78 |
Related Weaknesses (CWE)
References
FAQ
What is CVE-2026-41678?
CVE-2026-41678 is a vulnerability with a CVSS score of 9.8 (CRITICAL). rust-openssl provides OpenSSL bindings for the Rust programming language. From to before 0.10.78, aes::unwrap_key() contains an incorrect assertion: it checks that out.len() + 8 <= in_.len(), but th...
How severe is CVE-2026-41678?
CVE-2026-41678 has been rated CRITICAL with a CVSS base score of 9.8/10. This is considered a critical vulnerability requiring immediate attention.
Is there a patch for CVE-2026-41678?
Check the references section above for vendor advisories and patch information. Affected products include: Rust-Openssl Project Rust-Openssl.