CVE-2024-24559 Information

Description

Vyper is a Pythonic Smart Contract Language for the EVM. There is an error in the stack management when compiling the IR for sha3_64. Concretely the height variable is miscalculated. The vulnerability can’t be triggered without writing the IR by hand (that is it cannot be triggered from regular vyper code). sha3_64 is used for retrieval in mappings. No flow that would cache the key was found so the issue shouldn’t be possible to trigger when compiling the compiler-generated IR. This issue isn’t triggered during normal compilation of vyper code so the impact is low. At the time of publication there is no patch available.

Reference

https://github.com/vyperlang/vyper/security/advisories/GHSA-6845-xw22-ffxv https://github.com/vyperlang/vyper/blob/c150fc49ee9375a930d177044559b83cb95f7963/vyper/ir/compile_ir.py#L585-L586

Share on: