Skip to content
OpenAdvisories
High · 8.4 CVE-2026-114663 EUVD-2026-107698GHSA-9r8w-599f-g6jq

Vyper 0.4.0b1 through 0.5.0b1 Name Shadowing of Imported Constants and Default Arguments

Published Oct 22, 2026 · Updated Oct 23, 2026 · Assigned by VulnCheck

Description

Vyper 0.4.0b1 through 0.5.0b1 miscompiles unfoldable constants and omitted default arguments from imported modules, because parse_Name resolves their names in the using function's scope rather than at declaration. When a contract's parameter, local, or loop variable shares such a name, attacker-influenced input can replace the intended value, including out-of-range values for narrow types such as uint8, corrupting validation or accounting logic.

Affected products

VendorProductAffectedFixed
vyperlang vyper 0.4.0b1 – ≤ 0.5.0b1 —

References