Description
Vyper 0.1.0b1 before 0.1.0b12, 0.1.0b14, and 0.4.1 through 0.5.0b1 mix character-based line offsets with Python's UTF-8 byte col_offset values in vyper/ast/parse.py, so multi-byte characters shift the source slices used to reconstruct later numeric literals. An attacker contributing source with non-ASCII identifiers that NFKC-normalize to ASCII, or an invisible byte-order mark, can silently substitute addresses, integers or other constants in compiled code.
Published: 2026-10-21
Score: 6 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Subtle constant substitution
Action: Patch promptly
AI Analysis

Impact

Vyper 0.1.0b1 through 0.5.0b1 mixes character‑based line offsets with Python's UTF‑8 byte column offset values, causing the reconstruction of numeric literals to be misaligned when multi‑byte characters exist. An attacker can supply source containing non‑ASCII identifiers that normalize to ASCII, or an invisible byte‑order mark, to silently replace addresses, integers or other constants in the compiled bytecode, potentially enabling unintended functionality or data manipulation.

Affected Systems

Vyper and its variants, specifically versions 0.1.0b1 up to 0.1.0b12, 0.1.0b14, and 0.4.1 through 0.5.0b1.

Risk and Exploitability

The vulnerability carries a CVSS score of 6, indicating moderate severity on integrity and potentially safety of contracts. The EPSS score of less than 1% shows a very low probability of exploitation, and the vulnerability is not listed in the CISA KEV catalog, suggesting no known active exploits. An attacker would need to influence the compilation of malicious Vyper code, typically via control over the source or the build process. Once compiled, manipulated constants could undermine contract logic or grant unintended privileges.

Generated by OpenCVE AI on October 22, 2026 at 13:38 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade Vyper to a version later than 0.5.0b1, such as 0.5.0b2 or newer.
  • Verify that any Vyper source code you compile does not contain hidden multi‑byte characters or unexpected identifiers; perform a pre‑compilation scan or use a source‑cleaning tool.
  • If you cannot upgrade immediately, avoid compiling untrusted Vyper source code and isolate the compiler from externally supplied code.

Generated by OpenCVE AI on October 22, 2026 at 13:38 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 28 Oct 2026 17:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Thu, 22 Oct 2026 12:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-1007
References
Metrics threat_severity

None

threat_severity

Moderate


Wed, 21 Oct 2026 00:45:00 +0000

Type Values Removed Values Added
Description Vyper 0.1.0b1 before 0.1.0b12, 0.1.0b14, and 0.4.1 through 0.5.0b1 mix character-based line offsets with Python's UTF-8 byte col_offset values in vyper/ast/parse.py, so multi-byte characters shift the source slices used to reconstruct later numeric literals. An attacker contributing source with non-ASCII identifiers that NFKC-normalize to ASCII, or an invisible byte-order mark, can silently substitute addresses, integers or other constants in compiled code.
Title Vyper through 0.5.0b1 Literal Value Substitution via Multi-byte Characters
First Time appeared Vyperlang
Vyperlang vyper
Weaknesses CWE-176
CPEs cpe:2.3:a:vyperlang:vyper:*:*:*:*:*:*:*:*
Vendors & Products Vyperlang
Vyperlang vyper
References
Metrics cvssV3_1

{'score': 5.3, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:H/A:N'}

cvssV4_0

{'score': 6, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: VulnCheck

Published:

Updated: 2026-10-28T16:17:33.395Z

Reserved: 2026-10-20T21:48:58.503Z

Link: CVE-2026-114114

cve-icon Vulnrichment

Updated: 2026-10-28T16:16:57.627Z

cve-icon NVD

Status : Deferred

Published: 2026-10-21T01:17:37.640

Modified: 2026-10-28T17:17:49.653

Link: CVE-2026-114114

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-10-21T00:37:12Z

Links: CVE-2026-114114 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-22T13:45:06Z

Weaknesses
  • CWE-1007

    Insufficient Visual Distinction of Homoglyphs Presented to User

  • CWE-176

    Improper Handling of Unicode Encoding