{"id":"CVE-2018-21000","aliases":["EUVD-2021-1518","GHSA-2v78-j59h-fmpf","RUSTSEC-2018-0013","UBUNTU-CVE-2018-21000"],"status":"published","title":"Heap overflow or corruption in safe-transmute","description":"An issue was discovered in the safe-transmute crate before 0.10.1 for Rust. A constructor's arguments are in the wrong order, causing heap memory corruption.","severity":{"version":"3.0","score":9.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-09","score":0.01977,"percentile":0.80648,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-119"],"published":"2018-11-27T12:00:00Z","modified":"2026-10-20T10:50:07Z","fixes":[{"ecosystem":"crates.io","package":"safe-transmute","fixed_in":["0.10.1"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"crates.io","package":"safe-transmute","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.4.0"},{"fixed":"0.10.1"}]}]},{"source":"osv","ecosystem":"crates.io","package":"safe-transmute","ranges":[{"type":"SEMVER","events":[{"introduced":"0.4.0"},{"fixed":"0.10.1"}]}]},{"source":"osv","ecosystem":"crates.io","package":"safe-transmute","ranges":[{"type":"SEMVER","events":[{"introduced":"0.4.0"},{"fixed":"0.10.1"}]}]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"rust-safe-transmute","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.10.1-2"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"rust-safe-transmute","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.10.1-2"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"rust-safe-transmute","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.11.2-1"]},{"source":"osv","ecosystem":"Ubuntu:25.10","package":"rust-safe-transmute","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.11.3-1"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"rust-safe-transmute","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.11.3-1"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"rust-safe-transmute","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.11.3-1"]}],"products":[{"vendor":"safe-transmute_project","product":"safe-transmute"}],"references":[{"url":"https://rustsec.org/advisories/RUSTSEC-2018-0013.html","tags":["x_refsource_MISC","x_transferred","Third Party Advisory","advisory","web","report"]},{"url":"https://github.com/nabijaczleweli/safe-transmute-rs/pull/36","tags":["x_refsource_MISC","x_transferred","Patch","Third Party Advisory","fix","web","report"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2018-21000","tags":["advisory"]},{"url":"https://github.com/nabijaczleweli/safe-transmute-rs/commit/a134e06d740f9d7c287f74c0af2cd06206774364","tags":["web"]},{"url":"https://github.com/advisories/GHSA-2v78-j59h-fmpf"},{"url":"https://github.com/nabijaczleweli/safe-transmute-rs","tags":["package"]},{"url":"https://crates.io/crates/safe-transmute","tags":["package"]},{"url":"https://ubuntu.com/security/CVE-2018-21000","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2018-21000","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2018-21000","description":"An issue was discovered in the safe-transmute crate before 0.10.1 for Rust. A constructor's arguments are in the wrong order, causing heap memory corruption.","status":"published","published":"2019-08-26T14:29:49Z","modified":"2024-08-05T12:19:27.13Z","updated_at":"2026-11-02T14:35:02.289647Z"}],"euvd":[{"id":"EUVD-2021-1518","description":"An issue was discovered in the safe-transmute crate before 0.10.1 for Rust. A constructor's arguments are in the wrong order, causing heap memory corruption.","status":"published","published":"2019-08-26T14:29:49Z","modified":"2024-08-05T12:19:27Z","updated_at":"2026-11-03T02:39:28.311281Z"}],"ghsa":[{"id":"GHSA-2v78-j59h-fmpf","title":"Heap overflow or corruption in safe-transmute","description":"Affected versions of this crate switched the length and capacity arguments in the Vec::from_raw_parts() constructor, which could lead to memory corruption or data leakage.","status":"published","published":"2021-08-25T20:43:23Z","modified":"2023-06-13T21:04:33Z","cvss":[{"version":"3.0","score":9.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"cwes":["CWE-119"],"updated_at":"2026-11-02T14:36:54.225318Z"}],"nvd":[{"id":"CVE-2018-21000","description":"An issue was discovered in the safe-transmute crate before 0.10.1 for Rust. A constructor's arguments are in the wrong order, causing heap memory corruption.","status":"published","published":"2019-08-26T15:15:11.517Z","modified":"2026-06-17T01:53:54.837Z","cvss":[{"version":"3.0","score":9.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical","assessor":"primary"},{"version":"2.0","score":7.5,"vector":"AV:N/AC:L/Au:N/C:P/I:P/A:P","level":"high","assessor":"primary"}],"cwes":["CWE-119"],"updated_at":"2026-11-02T14:04:59.278647Z"}],"osv":[{"id":"CVE-2018-21000","description":"An issue was discovered in the safe-transmute crate before 0.10.1 for Rust. A constructor's arguments are in the wrong order, causing heap memory corruption.","status":"published","published":"2019-08-26T15:15:11.517Z","modified":"2026-10-20T10:50:07.727065129Z","cvss":[{"version":"3.0","score":9.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"updated_at":"2026-11-02T15:44:09.145458Z"},{"id":"GHSA-2v78-j59h-fmpf","title":"Heap overflow or corruption in safe-transmute","description":"Affected versions of this crate switched the length and capacity arguments in the Vec::from_raw_parts() constructor, which could lead to memory corruption or data leakage.","status":"published","published":"2021-08-25T20:43:23Z","modified":"2023-11-08T04:00:13.925381Z","cvss":[{"version":"3.0","score":9.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"cwes":["CWE-119"],"updated_at":"2026-11-02T15:46:34.700741Z"},{"id":"RUSTSEC-2018-0013","title":"Vec-to-vec transmutations could lead to heap overflow/corruption","description":"Affected versions of this crate switched the length and capacity arguments in the Vec::from_raw_parts() constructor,\nwhich could lead to memory corruption or data leakage.\n\nThe flaw was corrected by using the constructor correctly.","status":"published","published":"2018-11-27T12:00:00Z","modified":"2023-11-08T04:00:13.925381Z","cvss":[{"version":"3.0","score":9.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"updated_at":"2026-11-02T15:53:39.492624Z"},{"id":"UBUNTU-CVE-2018-21000","description":"An issue was discovered in the safe-transmute crate before 0.10.1 for Rust. A constructor's arguments are in the wrong order, causing heap memory corruption.","status":"published","published":"2019-08-26T15:15:00Z","modified":"2026-10-17T12:55:26.161611686Z","cvss":[{"version":"3.0","score":9.8,"vector":"CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","level":"critical"}],"updated_at":"2026-11-02T15:54:17.91743Z"}]}}
