RUSTSEC-2023-0087
Dashboard / Vulnerabilities / RUSTSEC-2023-0087
Summary: `MaybeUninit` misuse in `simd-json-derive`
Details: An invalid use of `MaybeUninit::uninit().assume_init()` in `simd-json-derive`'s derive macro can cause undefined behavior. The original code used `MaybeUninit` to avoid initialisation of the struct and then set the fields using `ptr::write`. The undefined behavior triggered by this misuse of `MaybeUninit` can lead to invlaid memory access and panics in binaries compiled in release mode (aka simd-json-derive prior to version 0.12 has UB and optimizes into some nonsense) The `0.12.0` removes this section of code, avoiding the use of MaybeUninit alltogether.
References: https://crates.io/crates/simd-json-derive, https://rustsec.org/advisories/RUSTSEC-2023-0087.html, https://github.com/simd-lite/simd-json-derive/issues/67
Affected packages
Package
Name: simd-json-derive
Purl: pkg:cargo/simd-json-derive
Affected ranges
Type: SEMVER
Events:
