CVE-2020-37287 PUBLISHED

Vyper before 0.2.6 Call Stack Corruption via Complex Type Function Arguments

Assigner: VulnCheck
Reserved: 20.10.2026 Published: 21.10.2026 Updated: 21.10.2026

Vyper before 0.2.6 contains a call stack corruption vulnerability that causes incorrect function outputs when complex types with non-base members are passed as arguments. Contracts passing multi-dimensional arrays or structs to internal or external functions receive corrupted values because the compiler assumed each subtype size is 32.

Metrics

CVSS Vector: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N
CVSS Score: 8.2

Product Status

Vendor vyperlang
Product vyper
Versions Default: unaffected
  • affected from 0 to 0.2.6 (excl.)
  • Version 0.2.6 is unaffected

References

Problem Types

  • Incorrect Calculation of Buffer Size CWE