RUSTSEC-2021-0016

Source
https://rustsec.org/advisories/RUSTSEC-2021-0016
Import Source
https://github.com/rustsec/advisory-db/blob/osv/crates/RUSTSEC-2021-0016.json
JSON Data
https://api.osv.dev/v1/vulns/RUSTSEC-2021-0016
Aliases
Published
2021-01-26T12:00:00Z
Modified
2023-11-08T04:05:22.896074Z
Severity
  • 7.5 (High) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N CVSS Calculator
Summary
`IoReader::read()`: user-provided `Read` on uninitialized buffer may cause UB
Details

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.

The flaw was fixed in commit 599313b by zero-initializing the buffer (via self.buf.resize(len, 0)) before passing it to Read.

Database specific
{
    "license": "CC0-1.0"
}
References

Affected packages

crates.io / ms3d

Package

Affected ranges

Type
SEMVER
Events
Introduced
0.0.0-0
Fixed
0.1.3

Ecosystem specific

{
    "affected_functions": null,
    "affects": {
        "os": [],
        "functions": [],
        "arch": []
    }
}

Database specific

{
    "cvss": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N",
    "informational": null,
    "categories": [
        "memory-exposure"
    ]
}