Lucene search

K
githubGitHub Advisory DatabaseGHSA-3HG2-R75X-G69M
HistorySep 18, 2023 - 7:20 p.m.

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

2023-09-1819:20:55
CWE-667
CWE-833
GitHub Advisory Database
github.com
4
vyper
incorrect re-entrancy
empty string
nonreentrant
patch
lock name

5.3 Medium

CVSS3

Attack Vector

NETWORK

Attack Complexity

LOW

Privileges Required

NONE

User Interaction

NONE

Scope

UNCHANGED

Confidentiality Impact

NONE

Integrity Impact

LOW

Availability Impact

NONE

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N

0.001 Low

EPSS

Percentile

20.6%

Impact

Locks of the type @nonreentrant("") or @nonreentrant('') do not produce reentrancy checks at runtime.

@nonreentrant("") # unprotected
@external
def bar():
    pass

@nonreentrant("lock") # protected
@external
def foo():
    pass

Patches

Patched in #3605

Workarounds

The lock name should be a non-empty string.

References

Are there any links users can visit to find out more?

Affected configurations

Vulners
Node
vyperlangvyperRange<0.3.10
CPENameOperatorVersion
vyperlt0.3.10

5.3 Medium

CVSS3

Attack Vector

NETWORK

Attack Complexity

LOW

Privileges Required

NONE

User Interaction

NONE

Scope

UNCHANGED

Confidentiality Impact

NONE

Integrity Impact

LOW

Availability Impact

NONE

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N

0.001 Low

EPSS

Percentile

20.6%

Related for GHSA-3HG2-R75X-G69M