Skip to content
OpenAdvisories
High · 7.5 CVE-2023-32058 EUVD-2023-0271GHSA-6r8q-pfpv-7cgjPYSEC-2023-78

Vyper vulnerable to integer overflow in loop

Published May 11, 2023 · Updated Jan 24, 2025 · Assigned by GitHub_M

Description

Vyper is a Pythonic smart contract language for the Ethereum virtual machine. Prior to version 0.3.8, due to missing overflow check for loop variables, by assigning the iterator of a loop to a variable, it is possible to overflow the type of the latter. The issue seems to happen only in loops of type `for i in range(a, a + N)` as in loops of type `for i in range(start, stop)` and `for i in range(stop)`, the compiler is able to raise a `TypeMismatch` when trying to overflow the variable. The problem has been patched in version 0.3.8.

Affected products

VendorProductAffectedFixed
vyperlang vyper < 0.3.8 —

Affected packages

EcosystemPackageAffectedFixedRecord
PyPI vyper < 0.3.8 0.3.8 GHSA-6r8q-pfpv-7cgj

References