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

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2026-114117— Vyper 0.3.8 through 0.5.0b1 Optimizer Miscompilation of msg.value | K in Ternary Branches

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 0.3.8 至 0.5.0b1 版本中存在一个优化器错误编译问题:当表达式 或 (其中 K 为任意非零整数常量)在启用 (默认选项)或 优化级别时,被用作三元表达式的分支条件,该表达式会被错误地编译为常量 1。受影响的合约在存储写入、算术运算、索引操作、返回值或事件记录中会静默使用错误的数值(无警告、无 revert),这可能导致存款记录错误并造成资金被锁定。

CVSS 5.9 · Medium

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-2026-114117

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 0.3.8 through 0.5.0b1 Optimizer Miscompilation of msg.value | K in Ternary Branches
Source: CVE Program / CVE List V5
Vulnerability Description
Vyper 0.3.8 through 0.5.0b1 contains an optimizer miscompilation in which (msg.value | K) or (len(msg.data) | K), where K is any nonzero integer literal, is compiled to the constant 1 when used as a ternary expression branch under -O gas (the default) or -O codesize. Affected contracts use the wrong value in storage writes, arithmetic, indexes, return values, or events without warning or revert, which can record deposits incorrectly and lock funds.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N
Source: CVE Program / CVE List V5
Vulnerability Type
数值计算不正确
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
vyperlang vyper 0.3.8 ~ 0.5.0b1 -

II. Public POCs for CVE-2026-114117

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

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-114117

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

Other References for CVE-2026-114117 (2)

Same Patch Batch · vyperlang · 2026-10-21 · 12 CVEs total

CVE-2021-48018 7.4 HIGH Vyper 0.2.13 before 0.2.15 Storage Corruption via @nonreentrant Decorator
CVE-2021-48020 6.5 MEDIUM Vyper before 0.3.0 Memory Corruption via Internal Function Calls in Arrays
CVE-2020-37286 6.5 MEDIUM Vyper 0.1.0b4 before 0.3.0 Memory Corruption via Nested Internal Function Calls
CVE-2020-37287 5.9 MEDIUM Vyper before 0.2.6 Call Stack Corruption via Complex Type Function Arguments
CVE-2026-114116 5.3 MEDIUM Vyper through 0.5.0b1 Literal Value Manipulation via Line Separators
CVE-2026-114114 5.3 MEDIUM Vyper through 0.5.0b1 Literal Value Substitution via Multi-byte Characters
CVE-2021-48019 4.8 MEDIUM Vyper before 0.2.9 Incorrect RETURNDATASIZE in create_forwarder_to Proxies
CVE-2026-114118 4.8 MEDIUM Vyper 0.3.4 through 0.5.0b1 create_from_blueprint Offset Validation Bypass via Unsigned Wr
CVE-2026-114115 3.7 LOW Vyper 0.3.8 through 0.5.0b1 Memory Misread via Ternary Nested Array Selection
CVE-2020-37288 3.7 LOW Vyper 0.1.0b10 before 0.2.3 Invalid Jump Destination via Return in Nested Loops
CVE-2020-37289 3.7 LOW Vyper before 0.3.1 Improper Input Validation of uint8 Interface Return Values

IV. Related Vulnerabilities

V. Comments for CVE-2026-114117

No comments yet


Leave a comment