Описание
Borrowck Scarifices exposes uninitialized memory in any_as_u8_slice
The safe function any_as_u8_slice can create byte slices that reference uninitialized memory when used with types containing padding bytes.
The function uses slice::from_raw_parts to create a &[u8] covering the entire size of a type, including padding bytes. According to Rust's documentation, from_raw_parts requires all bytes to be properly initialized, but padding bytes in structs are not guaranteed to be initialized. This violates the safety contract and causes undefined behavior.
Пакеты
Наименование
borrowck_sacrifices
rust
Затронутые версииВерсия исправления
< 0.2.0
0.2.0
2 Low
CVSS4
Дефекты
CWE-824
2 Low
CVSS4
Дефекты
CWE-824