Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2024-32647— vyper performs double eval of raw_args in create_from_blueprint

Quick assessment

Affected
vyperlang vyper
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Vyper是EVM 的 Pythonic 智能合约语言。 Vyper 0.3.10 及之前版本存在安全漏洞,该漏洞源于使用 create_from_blueprint内置函数可能会导致安全问题。

CVSS 5.3 · Medium EPSS 0.46% · P38

Possible ATT&CK Techniques 1 AI

T1190 · Exploit Public-Facing Application
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2024-32647

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
vyper performs double eval of raw_args in create_from_blueprint
Source: CVE Program / CVE List V5
Vulnerability 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.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Source: CVE Program / CVE List V5
Vulnerability Type
动态执行代码中指令转义处理不恰当(Eval注入)
Source: CVE Program / CVE List V5
Vulnerability Title
Vyper 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Vyper是EVM 的 Pythonic 智能合约语言。 Vyper 0.3.10 及之前版本存在安全漏洞,该漏洞源于使用 create_from_blueprint内置函数可能会导致安全问题。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

Vendor Product Affected Versions CPE Subscribe
vyperlang vyper <= 0.3.10 -

II. Public POCs for CVE-2024-32647

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2024-32647

请登录查看更多情报信息。

Vendor Advisories for CVE-2024-32647 (1)

Other References for CVE-2024-32647 (1)

Same Patch Batch · vyperlang · 2024-04-25 · 6 CVEs total

CVE-2024-32649 5.3 MEDIUM vyper performs double eval of the argument of sqrt
CVE-2024-32481 5.3 MEDIUM vyper's range(start, start + N) reverts for negative numbers
CVE-2024-32648 5.3 MEDIUM vyper default functions don't respect nonreentrancy keys
CVE-2024-32646 5.3 MEDIUM vyper performs double eval of the slice args when buffer from adhoc locations
CVE-2024-32645 5.3 MEDIUM vyper performs incorrect topic logging in raw_log

IV. Related Vulnerabilities

V. Comments for CVE-2024-32647

No comments yet


Leave a comment