RUSTSEC-2021-0122

Source
https://rustsec.org/advisories/RUSTSEC-2021-0122
Import Source
https://github.com/rustsec/advisory-db/blob/osv/crates/RUSTSEC-2021-0122.json
JSON Data
https://api.osv.dev/v1/vulns/RUSTSEC-2021-0122
Aliases
Published
2021-10-31T12:00:00Z
Modified
2023-11-08T04:14:40.953991Z
Severity
  • 9.8 (Critical) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H CVSS Calculator
Summary
Generated code can read and write out of bounds in safe code
Details

Code generated by flatbuffers' compiler is unsafe but not marked as such. See https://github.com/google/flatbuffers/issues/6627 for details.

For example, if generated code is used to decode malformed or untrusted input, undefined behavior (and thus security vulnerabilities) is possible even without the use of the unsafe keyword, violating the the meaning of "safe" code;

All users that use generated code by flatbuffers compiler are recommended to: 1. not expose flatbuffer generated code as part of their public APIs 2. audit their code and look for any usage of follow, push, or any method that uses them (e.g. self_follow). 3. Carefully go through the crates' documentation to understand which "safe" APIs are not intended to be used.

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

Affected packages

crates.io / flatbuffers

Package

Affected ranges

Type
SEMVER
Events
Introduced
0.0.0-0
Fixed
22.9.29

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:H/A:H",
    "informational": null,
    "categories": []
}