Headline
GHSA-hfxp-p695-629x: abomonation transmutes &T to and from &[u8] without sufficient constraints
This transmute is at the core of the abomonation crates. It’s so easy to use it to violate alignment requirements that no test in the crate’s test suite passes under miri. The use of this transmute in serialization/deserialization also incorrectly assumes that the layout of a repr(Rust) type is stable. This transmute can also disclose both the contents of padding bytes which may be an information leak and the contents of pointers, which may be used to defeat ASLR.
This transmute is at the core of the abomonation crates. It’s so easy to use it to violate alignment requirements that no test in the crate’s test suite passes under miri.
The use of this transmute in serialization/deserialization also incorrectly assumes that the layout of a repr(Rust) type is stable.
This transmute can also disclose both the contents of padding bytes which may be an information leak and the contents of pointers, which may be used to defeat ASLR.
References
- TimelyDataflow/abomonation#23
- https://rustsec.org/advisories/RUSTSEC-2021-0120.html