// For flags

CVE-2023-42441

Vyper has incorrect re-entrancy lock when key is empty string

Severity Score

5.3
*CVSS v3.1

Exploit Likelihood

*EPSS

Affected Versions

*CPE

Public Exploits

1
*Multiple Sources

Exploited in Wild

-
*KEV

Decision

Attend
*SSVC
Descriptions

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.

Vyper es un Lenguaje de Contrato Inteligente de Python para la Máquina Virtual Ethereum (EVM). A partir de la versión 0.2.9 y anteriores a la versión 0.3.10, los bloqueos del tipo '@nonreentrant("")' o '@nonreentrant('')' no producen comprobaciones de reentrada en tiempo de ejecución. Este problema se corrigió en la versión 0.3.10. Como workaround, asegúrese de que el nombre del bloqueo sea una cadena no vacía.

*Credits: N/A
CVSS Scores
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
Low
Availability
None
* Common Vulnerability Scoring System
SSVC
  • Decision:Attend
Exploitation
None
Automatable
Yes
Tech. Impact
Partial
* Organization's Worst-case Scenario
Timeline
  • 2023-09-08 CVE Reserved
  • 2023-09-18 CVE Published
  • 2024-09-24 CVE Updated
  • 2024-09-24 First Exploit
  • 2024-10-20 EPSS Updated
  • ---------- Exploited in Wild
  • ---------- KEV Due Date
CWE
  • CWE-667: Improper Locking
  • CWE-833: Deadlock
CAPEC
Affected Vendors, Products, and Versions
Vendor Product Version Other Status
Vendor Product Version Other Status <-- --> Vendor Product Version Other Status
Vyperlang
Search vendor "Vyperlang"
Vyper
Search vendor "Vyperlang" for product "Vyper"
>= 0.2.9 < 0.3.10
Search vendor "Vyperlang" for product "Vyper" and version " >= 0.2.9 < 0.3.10"
python
Affected