{"id":"CVE-2020-25016","aliases":["GHSA-g4rw-8m5q-6453","RUSTSEC-2020-0029"],"url":"https://o3.security/vulnerability/CVE-2020-25016","summary":"Out of bounds access in rgb","details":"Affected versions of rgb crate allow viewing and modifying data of any type T wrapped in RGB<T> as bytes, and do not correctly constrain RGB<T> and other wrapper structures to the types for which it is safe to do so.\n\nSafety violation possible for a type wrapped in RGB<T> and similar wrapper structures:\n\n* If T contains padding, viewing it as bytes may lead to exposure of contents of uninitialized memory.\n* If T contains a pointer, modifying it as bytes may lead to dereferencing of arbitrary pointers.\n* Any safety and/or validity invariants for T may be violated.\n\nThe issue was resolved by requiring all types wrapped in structures provided by RGB crate to implement an unsafe marker trait.","published":"2020-08-29T16:15:09.720Z","modified":"2026-03-14T10:22:06.839300Z","cvss":{"score":9.1,"severity":"CRITICAL","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N"},"epss":null,"cisaKev":null,"exploitsKnown":1,"affectedPackages":[{"ecosystem":"crates.io","name":"rgb","fixedVersion":"0.8.20"}],"fix":null,"references":[{"type":"ADVISORY","url":"https://rustsec.org/advisories/RUSTSEC-2020-0029.html"},{"type":"EVIDENCE","url":"https://github.com/kornelski/rust-rgb/issues/35"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2020-25016"},{"type":"PACKAGE","url":"https://github.com/kornelski/rust-rgb"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-03-14T10:22:06.839300Z"}}