CVE-2026-41678: rust-openssl: Incorrect bounds assertion in aes key wrap

Published Apr 22, 2026
·
Updated

Summary aes::unwrapkey() has an incorrect bounds assertion on the out buffer size, which can lead to out-of-bounds write.

Details aes::unwrapkey() 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.

Impact Vulnerable applications using AES keywrap and allowing attacker controlled buffer sizes could have an attacker trigger an out-of-bounds write.

Other sources

rust-openssl provides OpenSSL bindings for the Rust programming language. From to before 0.10.78, aes::unwrapkey() 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.

MITRE

Affected Software

2 affected componentsFixes available
rust/openssl>=0.10.24<0.10.78
0.10.78
Rust-openssl Project Rust-openssl Rust>=0.10.24<0.10.78

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade rust/openssl to a version that resolves this vulnerability.

    Fixed in 0.10.78
  2. Upgrade

    Upgrade rust-openssl to a version that resolves this vulnerability.

    Fixed in 0.10.78

Event History

Apr 22, 2026
Advisory Published
via GitHub·09:17 PM
Data Sourced
via GitHub·09:17 PM
DescriptionWeaknessAffected Software
Apr 24, 2026
CVE Published
via MITRE·05:18 PM
Data Sourced
via MITRE·05:18 PM
DescriptionWeakness
Data Sourced
via NVD·06:16 PM
DescriptionSeverityWeaknessAffected Software

Frequently Asked Questions

1

What is the severity of CVE-2026-41678?

CVE-2026-41678 is classified as a high severity vulnerability due to the potential for out-of-bounds write.

2

How do I fix CVE-2026-41678?

To fix CVE-2026-41678, upgrade to version 0.10.79 or later of the rust-openssl package.

3

What is the impact of CVE-2026-41678?

The impact of CVE-2026-41678 can result in application crashes or potential exploitation by malicious actors due to out-of-bounds writes.

4

Which versions are affected by CVE-2026-41678?

CVE-2026-41678 affects versions of rust-openssl between 0.10.24 and 0.10.78 inclusive.

5

Who maintains the CVE-2026-41678 vulnerability information?

The CVE-2026-41678 vulnerability information is maintained by the Rust community, specifically related to the rust-openssl package.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203