CVE-2021-48018 Vyper 0.2.13 before 0.2.15 Storage Corruption via @nonreentrant Decorator

High 8.3 Published Updated
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.

PackageAffectedFixed in
vyper PyPIFrom 0.2.130.2.15
vyper PyPIFrom 0.2.130.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.

Is CVE-2021-48018 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free