CVE-2026-114115 PUBLISHED

Vyper 0.3.8 through 0.5.0b1 Memory Misread via Ternary Nested Array Selection

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

Vyper 0.3.8 through 0.5.0b1 contains a compiler miscompilation vulnerability in parse_IfExp that reads nested arrays with narrower inner bounds using the wider result type's memory layout. When a ternary selects the narrower array, inner arrays after the first are read at wrong offsets, causing contracts to silently store corrupted values or revert.

Metrics

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

Product Status

Vendor vyperlang
Product vyper
Versions Default: unaffected
  • affected from 0.3.8 to 0.5.0b1 (incl.)

Credits

  • harkal analyst

References

Problem Types

  • Access of Resource Using Incompatible Type ('Type Confusion') CWE