CVE-2024-32647

CVE-2024-32647 is a medium-severity vulnerability in Vyperlang Vyper with a CVSS 3.x base score of 5.3. It is not currently listed as actively exploited by CISA, and its EPSS exploit-prediction score is low. The underlying weakness is classified as CWE-95.

Key facts

Description

Vyper is a pythonic Smart Contract Language for the Ethereum virtual machine. In versions 0.3.10 and prior, using the `create_from_blueprint` builtin can result in a double eval vulnerability when `raw_args=True` and the `args` argument has side-effects. It can be seen that the `_build_create_IR` function of the `create_from_blueprint` builtin doesn't cache the mentioned `args` argument to the stack. As such, it can be evaluated multiple times (instead of retrieving the value from the stack). No vulnerable production contracts were found. Additionally, double evaluation of side-effects should be easily discoverable in client tests. As such, the impact is low. As of time of publication, no fixed versions exist.

Frequently asked questions

What is CVE-2024-32647?
Vyper is a pythonic Smart Contract Language for the Ethereum virtual machine. In versions 0.3.10 and prior, using the `create_from_blueprint` builtin can result in a double eval vulnerability when `raw_args=True` and the `args` argument has side-effects. It can be seen that the `_build_create_IR` function of the `create_from_blueprint` builtin doesn't cache the mentioned `args` argument to the stack. As such, it can be evaluated multiple times (instead of retrieving the value from the stack). No vulnerable production contracts were found. Additionally, double evaluation of side-effects should be easily discoverable in client tests. As such, the impact is low. As of time of publication, no fixed versions exist.
How severe is CVE-2024-32647?
CVE-2024-32647 has a CVSS 3.x base score of 5.3, rated medium severity. It is exploitable over network with low attack complexity, requires no privileges and no user interaction. Impact on confidentiality is none, integrity low, and availability none.
Is CVE-2024-32647 being actively exploited?
It is not currently listed in CISA's KEV catalog. Its EPSS exploit-prediction score is 0% (36th percentile), an estimate of the probability of exploitation in the next 30 days.
What products are affected by CVE-2024-32647?
CVE-2024-32647 affects Vyperlang Vyper. See the affected-products list for the exact vulnerable versions.
How do I fix CVE-2024-32647?
Review the linked vendor and NVD advisories for patched versions and mitigations, then upgrade or apply the recommended workaround.
Does CVE-2024-32647 have an EU (EUVD) identifier?
Yes. CVE-2024-32647 is tracked in the ENISA EU Vulnerability Database (EUVD) as EUVD-2024-0184.
When was CVE-2024-32647 published?
CVE-2024-32647 was published on 2024-04-25 and last updated on 2026-06-17.

References

Affected products (1)

More vulnerabilities in Vyperlang Vyper

All CVEs affecting Vyperlang Vyper →

Other CWE-95 (Eval Injection) vulnerabilities

Browse all CWE-95 (Eval Injection) vulnerabilities →