GHSA-7vrm-3jc8-5wwm

    Dashboard / Vulnerabilities / GHSA-7vrm-3jc8-5wwm

    GHSA-7vrm-3jc8-5wwm

    Published: 4 Apr 2022Last Modified: 5 Dec 2024

    Summary: Incorrect Comparison in Vyper

    Details: ### Impact bytestrings can have dirty bytes in them, resulting in the word-for-word comparison to give incorrect results, e.g. ```vyper b1: Bytes[32] = b"abcdef" b1 = slice(b1, 0, 1) b2: Bytes[32] = b"abcdef" t: bool = b1 == b2 # incorrectly evaluates to True ``` even without dirty nonzero bytes, because there is no comparison of the length, two bytestrings can compare to equal if one ends with `"\x00"`. ```vyper b1: Bytes[32] = b"abc\0" b2: Bytes[32] = b"abc" t: bool = b1 == b2 # incorrectly evaluates to True ``` ### Patches fixed in https://github.com/vyperlang/vyper/commit/2c73f8352635c0a433423a5b94740de1a118e508

    Affected packages

    Package

    Name: vyper

    Purl: pkg:pypi/vyper

    Affected ranges

    Type: ECOSYSTEM

    Events:

    Introduced- 0
    Fixed -0.3.2

    Affected versions

    0.1.0b1
    0.1.0b10
    0.1.0b11
    0.1.0b12
    0.1.0b13
    0.1.0b14
    0.1.0b15
    0.1.0b16
    0.1.0b17
    0.1.0b2
    0.1.0b3
    0.1.0b4
    0.1.0b5
    0.1.0b6
    0.1.0b7
    0.1.0b8
    0.1.0b9

    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
    GHSA-7vrm-3jc8-5wwm | CVE-DB