RUSTSEC-2020-0073

    Dashboard / Vulnerabilities / RUSTSEC-2020-0073

    RUSTSEC-2020-0073

    Published: 12 Nov 2020Last Modified: 8 Nov 2023

    Summary: Mutable reference with immutable provenance

    Details: A mutable reference to a struct was constructed by dereferencing a pointer obtained from `slice::as_ptr`. Instead, `slice::as_mut_ptr` should have been called on the mutable slice argument. The former performs an implicit reborrow as an immutable shared reference which does not allow writing through the derived pointer. There is no evidence for miscompilation, exploitable or otherwise, caused by this bug. [Further investigation on Zulip][Zulip] suggests that the unoptimized generated LLVM IR does not contain any UB itself, effectively mitigating further effects. [Zulip]: https://rust-lang.zulipchat.com/#narrow/stream/146229-wg-secure-code/topic/Implications.20of.20using.20.60slice.3A.3Aas_ptr.60.20for.20mutable.20access/near/216499472

    Affected packages

    Package

    Name: image

    Purl: pkg:cargo/image

    Affected ranges

    Type: SEMVER

    Events:

    Introduced- 0.0.0-0
    Fixed -0.23.12

    Affected versions

    Common Vulnerability Scoring System

    Attack Vector
    Network
    Adjacent
    Local
    Physical
    Privileges Required
    None
    Low
    High
    User Interaction
    None
    Required
    Scope
    Unchanged
    Changed
    Confidentiality
    None
    Low
    High
    Integrity
    None
    Low
    High
    Availability
    None
    Low
    High
    RUSTSEC-2020-0073 | CVE-DB