Incorrect Authorization Affecting vyper package, versions [0.2.15,0.3.1)


Severity

Recommended
0.0
medium
0
10

CVSS assessment made by Snyk's Security Team. Learn more

Threat Intelligence

EPSS
0.12% (48th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications

Snyk Learn

Learn about Incorrect Authorization vulnerabilities in an interactive lesson.

Start learning
  • Snyk IDSNYK-PYTHON-VYPER-5825690
  • published8 Aug 2023
  • disclosed7 Aug 2023
  • creditUnknown

Introduced: 7 Aug 2023

CVE-2023-39363  (opens in a new tab)
CWE-863  (opens in a new tab)

How to fix?

Upgrade vyper to version 0.3.1 or higher.

Overview

vyper is a Pythonic Smart Contract Language for the EVM.

Affected versions of this package are vulnerable to Incorrect Authorization which allows an attacker to cause cross-function re-entrancy in contracts compiled with the susceptible versions by exploiting the incorrect allocation of named re-entrancy locks. This is only exploitable if a .vy contract is compiled with the affected versions; a primary function utilizes the @nonreentrant decorator with a specific key and does not strictly follow the check-effects-interaction pattern (i.e., contains an external call to an untrusted party before storage updates); and a secondary function utilizes the same key and would be affected by the improper state caused by the primary function.

CVSS Scores

version 3.1