{"id":"RUSTSEC-2026-0029","summary":"Double-free and use-after-free for Hive","details":"`Drop` implementation for `Hive` did perform free, but so did `Hive::close`, which,\nat the end of the scope performed `Drop`, therefore triggering double-free.\n\nAdditionally, function `Hive::from_handle` was not marked as unsafe, making it,\nin combination with `as_handle` easy to clone and trigger double-free in safe\ncode or triggering UB when using invalid pointer.","aliases":["GHSA-j8cj-hw74-64jv"],"modified":"2026-03-01T06:01:36Z","published":"2026-02-26T12:00:00Z","database_specific":{"license":"CC0-1.0"},"references":[{"type":"PACKAGE","url":"https://crates.io/crates/hivex"},{"type":"ADVISORY","url":"https://rustsec.org/advisories/RUSTSEC-2026-0029.html"},{"type":"WEB","url":"https://codeberg.org/1millibyte/toolsnt/issues/18"}],"affected":[{"package":{"name":"hivex","ecosystem":"crates.io","purl":"pkg:cargo/hivex"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0.0.0-0"},{"fixed":"0.2.1"}]}],"ecosystem_specific":{"affects":{"functions":["hivex::Hive::close","hivex::Hive::from_handle"],"os":[],"arch":[]},"affected_functions":null},"database_specific":{"categories":[],"informational":"unsound","source":"https://github.com/rustsec/advisory-db/blob/osv/crates/RUSTSEC-2026-0029.json","cvss":null}}],"schema_version":"1.7.3"}