{"id":"CVE-2026-41681","aliases":["GHSA-ghm9-cr32-g9qj"],"url":"https://o3.security/vulnerability/CVE-2026-41681","summary":"rust-openssl: MdCtxRef::digest_final() writes past caller buffer with no length check","details":"rust-openssl provides OpenSSL bindings for the Rust programming language.  From 0.10.39 to before 0.10.78, EVP_DigestFinal() always writes EVP_MD_CTX_size(ctx) to the out buffer. If out is smaller than that, MdCtxRef::digest_final() writes past its end, usually corrupting the stack. This is reachable from safe Rust. This vulnerability is fixed in 0.10.78.","published":"2026-04-24T17:19:15.187Z","modified":"2026-08-07T11:51:04.508851128Z","cvss":null,"epss":null,"cisaKev":null,"exploitsKnown":0,"affectedPackages":[{"ecosystem":"crates.io","name":"openssl","fixedVersion":"0.10.78"}],"fix":{"url":"https://github.com/rust-openssl/rust-openssl/commit/826c3888b77add418b394770e2b2e3a72d9f92fe","label":"rust-openssl/rust-openssl@826c388"},"references":[{"type":"WEB","url":"https://github.com/rust-openssl/rust-openssl/releases/tag/openssl-v0.10.78"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/41xxx/CVE-2026-41681.json"},{"type":"ADVISORY","url":"https://github.com/rust-openssl/rust-openssl/security/advisories/GHSA-ghm9-cr32-g9qj"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-41681"},{"type":"FIX","url":"https://github.com/rust-openssl/rust-openssl/commit/826c3888b77add418b394770e2b2e3a72d9f92fe"},{"type":"FIX","url":"https://github.com/rust-openssl/rust-openssl/pull/2608"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-08-07T11:51:04.508851128Z"}}