Vyper has incorrect re-entrancy lock when key is empty string
CVE-2023-42441
5.3MEDIUM
What is CVE-2023-42441?
Vyper is a Pythonic Smart Contract Language for the Ethereum Virtual Machine (EVM). Starting in version 0.2.9 and prior to version 0.3.10, locks of the type @nonreentrant("") or @nonreentrant('') do not produce reentrancy checks at runtime. This issue is fixed in version 0.3.10. As a workaround, ensure the lock name is a non-empty string.
Affected Version(s)
vyper >= 0.2.9, < 0.3.10
