{"id":"CVE-2021-25904","aliases":["EUVD-2021-1529","GHSA-352p-rhvq-7g78","RUSTSEC-2021-0007"],"status":"published","title":"Null pointer deference in av-data","description":"An issue was discovered in the av-data crate before 0.3.0 for Rust. A raw pointer is dereferenced, leading to a read of an arbitrary memory address, sometimes causing a segfault.","severity":{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-10","score":0.01343,"percentile":0.71611,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-476"],"published":"2021-01-07T12:00:00Z","modified":"2026-06-17T03:42:33Z","fixes":[{"ecosystem":"crates.io","package":"av-data","fixed_in":["0.3.0"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"crates.io","package":"av-data","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.3.0"}]}]},{"source":"osv","ecosystem":"crates.io","package":"av-data","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"0.3.0"}]}]},{"source":"osv","ecosystem":"crates.io","package":"av-data","ranges":[{"type":"SEMVER","events":[{"introduced":"0.0.0-0"},{"fixed":"0.3.0"}]}]}],"products":[{"vendor":"av-data_project","product":"av-data"}],"references":[{"url":"https://rustsec.org/advisories/RUSTSEC-2021-0007.html","tags":["x_refsource_MISC","x_transferred","Exploit","Third Party Advisory","web","advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2021-25904","tags":["advisory"]},{"url":"https://github.com/rust-av/rust-av/issues/136","tags":["web","report"]},{"url":"https://github.com/advisories/GHSA-352p-rhvq-7g78"},{"url":"https://github.com/rust-av/rust-av","tags":["package"]},{"url":"https://crates.io/crates/av-data","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2021-25904","description":"An issue was discovered in the av-data crate before 0.3.0 for Rust. A raw pointer is dereferenced, leading to a read of an arbitrary memory address, sometimes causing a segfault.","status":"published","published":"2021-01-22T09:02:48Z","modified":"2024-08-03T20:11:28.45Z","updated_at":"2026-11-02T14:32:59.802172Z"}],"euvd":[{"id":"EUVD-2021-1529","description":"An issue was discovered in the av-data crate before 0.3.0 for Rust. A raw pointer is dereferenced, leading to a read of an arbitrary memory address, sometimes causing a segfault.","status":"published","published":"2021-01-22T09:02:48Z","modified":"2024-08-03T20:11:28Z","updated_at":"2026-11-03T03:24:52.420769Z"}],"ghsa":[{"id":"GHSA-352p-rhvq-7g78","title":"Null pointer deference in av-data","description":"An issue was discovered in the av-data crate before 0.3.0 for Rust. A raw pointer is dereferenced, leading to a read of an arbitrary memory address, sometimes causing a segfault.","status":"published","published":"2021-08-25T20:52:55Z","modified":"2023-01-11T05:05:30Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"cwes":["CWE-476"],"updated_at":"2026-11-02T14:36:12.361159Z"}],"nvd":[{"id":"CVE-2021-25904","description":"An issue was discovered in the av-data crate before 0.3.0 for Rust. A raw pointer is dereferenced, leading to a read of an arbitrary memory address, sometimes causing a segfault.","status":"published","published":"2021-01-26T18:16:22.507Z","modified":"2026-06-17T03:42:33.187Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high","assessor":"primary"},{"version":"2.0","score":5,"vector":"AV:N/AC:L/Au:N/C:N/I:N/A:P","level":"medium","assessor":"primary"}],"cwes":["CWE-476"],"updated_at":"2026-11-02T14:06:49.660551Z"}],"osv":[{"id":"GHSA-352p-rhvq-7g78","title":"Null pointer deference in av-data","description":"An issue was discovered in the av-data crate before 0.3.0 for Rust. A raw pointer is dereferenced, leading to a read of an arbitrary memory address, sometimes causing a segfault.","status":"published","published":"2021-08-25T20:52:55Z","modified":"2023-11-08T04:05:16.736449Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"cwes":["CWE-476"],"updated_at":"2026-11-02T15:46:35.050232Z"},{"id":"RUSTSEC-2021-0007","title":"`Frame::copy_from_raw_parts` can lead to segfault without `unsafe`","description":"`fn Frame::copy_from_raw_parts()` is a safe API that can take a\nraw pointer and dereference it. It is possible to read arbitrary memory address\nwith an arbitrarily fed pointer. This allows the safe API to access \u0026 read\narbitrary address in memory. Feeding an invalid memory address pointer to\nthe API may also cause the program to segfault.\n\nThe flaw was corrected in https://github.com/rust-av/rust-av/pull/137,\nby removing the API `fn Frame::copy_from_raw_parts()`.","status":"published","published":"2021-01-07T12:00:00Z","modified":"2023-11-08T04:05:16.736449Z","cvss":[{"version":"3.1","score":7.5,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","level":"high"}],"updated_at":"2026-11-02T15:53:39.492624Z"}]}}
