CVE-2021-48018 Vyper 0.2.13 before 0.2.15 Storage Corruption via @nonreentrant Decorator
- Exploited in the wild
- Not known
- Fix
- None listed
What is CVE-2021-48018?
CVE-2021-48018 is a high-severity vulnerability in vyperlang vyper, published on 21 Oct 2026.
Official description
Vyper from 0.2.13 before 0.2.15 allocates storage slots for @nonreentrant reentrancy locks at the same locations as contract storage variables. When a function using @nonreentrant is called, setting the lock overwrites the overlapping storage variable, corrupting contract state and breaking the contract's intended logic.
Weakness: CWE-787
Which versions are affected by CVE-2021-48018?
2 open source packages ship an affected version, including vyper.
| Package | Affected | Fixed in |
|---|---|---|
vyper PyPI | From 0.2.13 | 0.2.15 |
vyper PyPI | From 0.2.13 | 0.2.15 |
How do I fix CVE-2021-48018?
Upgrade vyper to 0.2.15 or later.
Is CVE-2021-48018 being exploited?
There is no known exploitation of CVE-2021-48018 in the wild and no public exploit code.
Sources
Also known as GHSA-57w3-rr8j-wp9c, GHSA-7f92-rr6w-cq64.