CVE-2025-27105
Description
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 bounds check will not be re-evaluated during the write portion of the statement. This issue has been addressed in version 0.4.1 and all users are advised to upgrade. There are no known workarounds for this vulnerability.
How to fix
- vyperlang vyper0.4.1 or later
- vyper0.4.1 or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| vyperlang vyper | v < 0.4.1 | 0.4.1 |
| vyperPyPI | v < 0.4.1 | 0.4.1 |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.