GHSA-jwh2-vrr9-vcp2 json
mz-avro's incorrect use of `set_len` allows for un-initialized memory
published 5y ago modified 3y ago also RUSTSEC-2021-0138
- cvss
- —
- not scored
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- —
- no score, EPSS covers CVEs only
- public exploits
- 0
- none known
Summary
Affected versions of this crate passes an uninitialized buffer to a user-provided `Read` implementation.
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.
Note: there is only UB in the case where a user provides a struct whose `Read` implementation inspects the buffer passed to `read_exact` before writing to it. This is an unidiomatic (albeit possible) `Read` implementation.
See https://github.com/MaterializeInc/materialize/issues/8669 for details.
Patch / fix
- crates.io mz-avro 0.7.0
Is GHSA-jwh2-vrr9-vcp2 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerAffected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| crates.io | mz-avro | <0.7.0 >=0.0.0-0, <0.7.0 |
0.7.0 |
References
-
github.com
/MaterializeInc/materialize/issues/8669
web, report
-
github.com
/MaterializeInc/materialize
package
-
rustsec.org
/advisories/RUSTSEC-2021-0138.html
web, advisory
-
crates.io
/crates/mz-avro
package
Sources
- GitHub Advisory GHSA-jwh2-vrr9-vcp2
- OSV RUSTSEC-2021-0138
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.