CVE-2025-47285
Python vulnerability analysis and mitigation

Overview

Vyper, the Pythonic Programming Language for the Ethereum Virtual Machine, contains a vulnerability in versions up to and including 0.4.2rc1 where the concat() builtin function may skip evaluation of side effects when the length of an argument is zero. The vulnerability was discovered and disclosed on May 15, 2025, and has been assigned CVE-2025-47285 (GitHub Advisory, NVD).

Technical details

The vulnerability stems from a fastpath implementation in the concat() function that skips evaluation of argument expressions when their length is zero. This occurs due to a code section that explicitly ignores empty strings when arg.typ.maxlen equals 0. The issue primarily affects code using the ternary operator introduced in v0.3.8, where zero-length bytestrings are constructed with side effects, such as b"" if self.dosomeside_effect() else b"". The vulnerability has been assigned a CVSS v4.0 score of 2.9 (LOW) with vector string CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:P (Wiz).

Impact

The impact of this vulnerability is considered low since it would be very unusual in user code to construct zero-length bytestrings using an expression with side-effects. Typically, zero-length bytestrings are constructed with the empty literal b"". However, in cases where side effects are intended in such constructions, the expected side effects may not occur, potentially leading to unexpected behavior in smart contracts (GitHub Advisory).

Mitigation and workarounds

As a temporary workaround, developers are advised not to have side effects in expressions which construct zero-length bytestrings. A permanent fix is available in pull request 4644 and is expected to be included in the 0.4.2 release. The fix removes the fastpath implementation that caused the side effect elimination (GitHub PR, GitHub Advisory).

Additional resources


SourceThis report was generated using AI

Related Python vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2025-66471HIGH8.9
  • PythonPython
  • urllib3
NoYesDec 05, 2025
CVE-2025-66418HIGH8.9
  • PythonPython
  • python-urllib3
NoYesDec 05, 2025
CVE-2025-65958HIGH8.5
  • PythonPython
  • cpe:2.3:a:openwebui:open_webui
NoYesDec 04, 2025
CVE-2025-56427HIGH7.5
  • PythonPython
  • composio
NoNoDec 04, 2025
CVE-2025-63681MEDIUM4.3
  • PythonPython
  • open-webui
NoNoDec 04, 2025

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management