Skip to main content
← All vulnerabilities
CVE-2024-43366

zkvyper ignored loop range bounds

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 1.5.3
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: poc
  • Automatable: yes
  • Technical impact: partial

Summary

zkvyper is a Vyper compiler. Starting in version 1.3.12 and prior to version 1.5.3, since LLL IR has no Turing-incompletness restrictions, it is compiled to a loop with a much more late exit condition. It leads to a loss of funds or other unwanted behavior if the loop body contains it. However, more real-life use cases like iterating over an array are not affected. No contracts were affected by this issue, which was fixed in version 1.5.3. Upgrading and redeploying affected contracts is the only way to avoid the vulnerability.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: poc · Automatable: yes · Technical impact: partial

  3. Record last updated

Affected versions

  • matter-labs era-compiler-vyper

    From 1.3.12 · fixed in 1.5.3

References 1

GitHub · matter-labs/era-compiler-vyper