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.
Metrics
CVSS 3.1 8.4/10
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HWeakness enumeration
Affected software
| Vendor | Product | Versions |
|---|---|---|
| vyperlang | vyper | >= 0.4.0b1, <= 0.5.0b1 |
References
Timeline
- Published
- Oct 22, 2026
- Last modified
- Oct 23, 2026
- NVD status
- Deferred