RUSTSEC-2020-0062

    Dashboard / Vulnerabilities / RUSTSEC-2020-0062

    RUSTSEC-2020-0062

    Published: 24 Jan 2020Last Modified: 8 Nov 2023

    Summary: Improper `Sync` implementation on `FuturesUnordered` in futures-utils can cause data corruption

    Details: Affected versions of the crate had an unsound `Sync` implementation on the `FuturesUnordered` structure, which used a `Cell` for interior mutability without any code to handle synchronized access to the underlying task list's length and head safely. This could of lead to data corruption since two threads modifying the list at once could see incorrect values due to the lack of access synchronization. The issue was fixed by adding access synchronization code around insertion of tasks into the list.

    Affected packages

    Package

    Name: futures-util

    Purl: pkg:cargo/futures-util

    Affected ranges

    Type: SEMVER

    Events:

    Introduced- 0.3.0
    Fixed -0.3.2

    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-0062 | CVE-DB