CVE-2023-30629

    Dashboard / Vulnerabilities / CVE-2023-30629

    CVE-2023-30629

    Published: 24 Apr 2023Last Modified: 12 Aug 2026

    Summary: Vyper's raw_call with outsize=0 and revert_on_failure=False returns incorrect success value

    Details: Vyper is a Pythonic Smart Contract Language for the ethereum virtual machine. In versions 0.3.1 through 0.3.7, the Vyper compiler generates the wrong bytecode. Any contract that uses the `raw_call` with `revert_on_failure=False` and `max_outsize=0` receives the wrong response from `raw_call`. Depending on the memory garbage, the result can be either `True` or `False`. A patch is available and, as of time of publication, anticipated to be part of Vyper 0.3.8. As a workaround, one may always put `max_outsize>0`.

    Affected packages

    Package

    Name:

    Purl:

    Affected ranges

    Type: GIT

    Events:

    Introduced- 0463ea4c304858d94494e2df229021448feaedeb

    Affected versions

    v0.3.7
    v0.3.6
    v0.3.5
    v0.3.4
    v0.3.3
    v0.3.2
    v0.3.1

    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
    CVE-2023-30629 | CVE-DB