<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="../assets/feed.xsl"?><rss version="2.0"><channel><title>PatchTheCVE: vyperlang</title><link>https://patchthecve.com/</link><description>CVEs with upgrade or downgrade fix steps</description><item><title>CVE-2025-27105: vyper is a Pythonic Smart Contract Language for the EVM</title><link>https://patchthecve.com/cve/CVE-2025-27105.html</link><guid>https://patchthecve.com/cve/CVE-2025-27105.html</guid><pubDate>Wed, 17 Jun 2026 09:03:02 +0000</pubDate><description>CRITICAL 9.1: vyper is a Pythonic Smart Contract Language for the EVM. Vyper handles AugAssign statements by first caching the target location to avoid double evaluation. However, in the case when target is an access to a DynArray and the rhs modifies the array, the cached target will evaluate first, and the boun</description></item><item><title>CVE-2025-27104: vyper is a Pythonic Smart Contract Language for the EVM</title><link>https://patchthecve.com/cve/CVE-2025-27104.html</link><guid>https://patchthecve.com/cve/CVE-2025-27104.html</guid><pubDate>Wed, 17 Jun 2026 09:03:02 +0000</pubDate><description>HIGH 7.5: vyper is a Pythonic Smart Contract Language for the EVM. Multiple evaluation of a single expression is possible in the iterator target of a for loop. While the iterator expression cannot produce multiple writes, it can consume side effects produced in the loop body (e.g. read a storage variable upda</description></item><item><title>CVE-2025-26622: vyper is a Pythonic Smart Contract Language for the EVM</title><link>https://patchthecve.com/cve/CVE-2025-26622.html</link><guid>https://patchthecve.com/cve/CVE-2025-26622.html</guid><pubDate>Wed, 17 Jun 2026 09:02:08 +0000</pubDate><description>HIGH 7.5: vyper is a Pythonic Smart Contract Language for the EVM. Vyper `sqrt()` builtin uses the babylonian method to calculate square roots of decimals. Unfortunately, improper handling of the oscillating final states may lead to sqrt incorrectly returning rounded up results. This issue is being addressed </description></item><item><title>CVE-2025-21607: Vyper is a Pythonic Smart Contract Language for the EVM</title><link>https://patchthecve.com/cve/CVE-2025-21607.html</link><guid>https://patchthecve.com/cve/CVE-2025-21607.html</guid><pubDate>Wed, 17 Jun 2026 08:43:50 +0000</pubDate><description>HIGH 7.5: Vyper is a Pythonic Smart Contract Language for the EVM. When the Vyper Compiler uses the precompiles EcRecover (0x1) and Identity (0x4), the success flag of the call is not checked. As a consequence an attacker can provide a specific amount of gas to make these calls fail but let the overall execut</description></item><item><title>CVE-2024-26149: Vyper is a pythonic Smart Contract Language for the ethereum virtual machine</title><link>https://patchthecve.com/cve/CVE-2024-26149.html</link><guid>https://patchthecve.com/cve/CVE-2024-26149.html</guid><pubDate>Wed, 17 Jun 2026 07:17:12 +0000</pubDate><description>LOW 3.7: Vyper is a pythonic Smart Contract Language for the ethereum virtual machine. If an excessively large value is specified as the starting index for an array in `_abi_decode`, it can cause the read position to overflow. This results in the decoding of values outside the intended array bounds, potentia</description></item><item><title>CVE-2024-24564: Vyper is a pythonic Smart Contract Language for the ethereum virtual machine</title><link>https://patchthecve.com/cve/CVE-2024-24564.html</link><guid>https://patchthecve.com/cve/CVE-2024-24564.html</guid><pubDate>Wed, 17 Jun 2026 07:14:36 +0000</pubDate><description>LOW 3.7: Vyper is a pythonic Smart Contract Language for the ethereum virtual machine. When using the built-in `extract32(b, start)`, if the `start` index provided has for side effect to update `b`, the byte array to extract `32` bytes from, it could be that some dirty memory is read and returned by `extract</description></item><item><title>CVE-2024-24563: Vyper is a Pythonic Smart Contract Language for the Ethereum Virtual Machine</title><link>https://patchthecve.com/cve/CVE-2024-24563.html</link><guid>https://patchthecve.com/cve/CVE-2024-24563.html</guid><pubDate>Wed, 17 Jun 2026 07:14:36 +0000</pubDate><description>CRITICAL 9.8: Vyper is a Pythonic Smart Contract Language for the Ethereum Virtual Machine. Arrays can be keyed by a signed integer, while they are defined for unsigned integers only. The typechecker doesn&#x27;t throw when spotting the usage of an `int` as an index for an array. The typechecker allows the usage of si</description></item><item><title>CVE-2024-24560: Vyper is a Pythonic Smart Contract Language for the Ethereum Virtual Machine</title><link>https://patchthecve.com/cve/CVE-2024-24560.html</link><guid>https://patchthecve.com/cve/CVE-2024-24560.html</guid><pubDate>Wed, 17 Jun 2026 07:14:36 +0000</pubDate><description>LOW 3.7: Vyper is a Pythonic Smart Contract Language for the Ethereum Virtual Machine. When calls to external contracts are made, we write the input buffer starting at byte 28, and allocate the return buffer to start at byte 0 (overlapping with the input buffer). When checking RETURNDATASIZE for dynamic type</description></item><item><title>CVE-2024-24561: Vyper is a pythonic Smart Contract Language for the ethereum virtual machine</title><link>https://patchthecve.com/cve/CVE-2024-24561.html</link><guid>https://patchthecve.com/cve/CVE-2024-24561.html</guid><pubDate>Wed, 17 Jun 2026 07:14:36 +0000</pubDate><description>CRITICAL 9.8: Vyper is a pythonic Smart Contract Language for the ethereum virtual machine. In versions 0.3.10 and earlier, the bounds check for slices does not account for the ability for start + length to overflow when the values aren&#x27;t literals. If a slice() function uses a non-literal argument for the start o</description></item><item><title>CVE-2024-24567: Vyper is a pythonic Smart Contract Language for the ethereum virtual machine</title><link>https://patchthecve.com/cve/CVE-2024-24567.html</link><guid>https://patchthecve.com/cve/CVE-2024-24567.html</guid><pubDate>Wed, 17 Jun 2026 07:14:37 +0000</pubDate><description>MEDIUM 4.8: Vyper is a pythonic Smart Contract Language for the ethereum virtual machine. Vyper compiler allows passing a value in builtin raw_call even if the call is a delegatecall or a staticcall. But in the context of delegatecall and staticcall the handling of value is not possible due to the semantics of </description></item><item><title>CVE-2024-22419: Vyper is a Pythonic Smart Contract Language for the Ethereum Virtual Machine</title><link>https://patchthecve.com/cve/CVE-2024-22419.html</link><guid>https://patchthecve.com/cve/CVE-2024-22419.html</guid><pubDate>Wed, 17 Jun 2026 07:11:22 +0000</pubDate><description>HIGH 7.3: Vyper is a Pythonic Smart Contract Language for the Ethereum Virtual Machine. The `concat` built-in can write over the bounds of the memory buffer that was allocated for it and thus overwrite existing valid data. The root cause is that the `build_IR` for `concat` doesn&#x27;t properly adhere to the API o</description></item></channel></rss>