{"id":"RUSTSEC-2026-0295","summary":"Memory corruption bug on `ApplyResult` type","details":"The `ApplyResult` type contains a raw pointer to a C++ memory object and has a derived `Clone` implementation which creates a reference to this object without incrementing the associated reference counter. \n\nAs a result, if an instance of `ApplyResult` is duplicated through `Clone` and both instances are dropped a use-after-free can occur.","modified":"2026-09-21T10:15:04.329850030Z","published":"2026-08-12T12:00:00Z","database_specific":{"license":"CC0-1.0"},"references":[{"type":"PACKAGE","url":"https://crates.io/crates/z3"},{"type":"ADVISORY","url":"https://rustsec.org/advisories/RUSTSEC-2026-0295.html"},{"type":"WEB","url":"https://github.com/prove-rs/z3.rs/pull/578"}],"affected":[{"package":{"name":"z3","ecosystem":"crates.io","purl":"pkg:cargo/z3"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0.0.0-0"},{"fixed":"0.21.0"}]}],"ecosystem_specific":{"affects":{"os":[],"functions":[],"arch":[]},"affected_functions":null},"database_specific":{"categories":["memory-corruption"],"cvss":null,"informational":null,"source":"https://github.com/rustsec/advisory-db/blob/osv/crates/RUSTSEC-2026-0295.json"}}],"schema_version":"1.9.0"}