{"id":"GHSA-gx73-2498-r55c","summary":"Unsound casting in flatbuffers","details":"The implementation of impl Follow for bool allows to reinterpret arbitrary bytes as a bool.\n\nIn Rust bool has stringent requirements for its in-memory representation. Use of this function allows to violate these requirements and invoke undefined behaviour in safe code.","aliases":["CVE-2019-25004","RUSTSEC-2019-0028"],"modified":"2023-11-08T04:01:32.107935Z","published":"2021-08-25T20:46:49Z","database_specific":{"github_reviewed_at":"2021-08-19T21:19:36Z","nvd_published_at":null,"cwe_ids":["CWE-704"],"severity":"CRITICAL","github_reviewed":true},"references":[{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2019-25004"},{"type":"WEB","url":"https://github.com/google/flatbuffers/issues/5530"},{"type":"PACKAGE","url":"https://github.com/google/flatbuffers"},{"type":"WEB","url":"https://rustsec.org/advisories/RUSTSEC-2019-0028.html"}],"affected":[{"package":{"name":"flatbuffers","ecosystem":"crates.io","purl":"pkg:cargo/flatbuffers"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0.4.0"},{"fixed":"0.6.1"}]}],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2021/08/GHSA-gx73-2498-r55c/GHSA-gx73-2498-r55c.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"}]}