GitHub Advisoryadvisory · crates.io

GHSA-p56p-gq3f-whg8 `Read` on uninitialized buffer may cause UB ( `read_entry()` )

HIGH Published 2022-06-16 Modified 2022-06-16 Official page ↗
Ecosystem
crates.io
Packages
flumedb
Severity
High
Reviewed
2022-06-16

Affected packages

• crates.io flumedb: < 0.1.6 → fixed in 0.1.6

Description

Affected versions of this crate passes an uninitialized buffer to a user-provided `Read` implementation. There are two of such cases (`go_offset_log::read_entry()` & `offset_log::read_entry()`). Arbitrary `Read` implementations can read from the uninitialized buffer (memory exposure) and also can return incorrect number of bytes written to the buffer. Reading from uninitialized memory produces undefined values that can quickly invoke undefined behavior.

References