Vyper up to 0.3.9 Ecrecover Precompile return value
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 5.2 | $0-$5k | 0.00 |
Summary
A vulnerability, which was classified as problematic, has been found in Vyper up to 0.3.9. Affected by this vulnerability is an unknown functionality of the component Ecrecover Precompile. This manipulation causes return value. This vulnerability is handled as CVE-2023-37902. The attack can be initiated remotely. There is not any exploit available. It is advisable to upgrade the affected component.
Details
A vulnerability was found in Vyper up to 0.3.9. It has been declared as problematic. Affected by this vulnerability is an unknown functionality of the component Ecrecover Precompile. The manipulation with an unknown input leads to a return value vulnerability. The CWE definition for the vulnerability is CWE-252. The product does not check the return value from a method or function, which can prevent it from detecting unexpected states and conditions. As an impact it is known to affect integrity. The summary by CVE is:
Vyper is a Pythonic programming language that targets the Ethereum Virtual Machine (EVM). Prior to version 0.3.10, the ecrecover precompile does not fill the output buffer if the signature does not verify. However, the ecrecover builtin will still return whatever is at memory location 0. This means that the if the compiler has been convinced to write to the 0 memory location with specially crafted data (generally, this can happen with a hashmap access or immutable read) just before the ecrecover, a signature check might pass on an invalid signature. Version 0.3.10 contains a patch for this issue.
The weakness was released 07/26/2023 as GHSA-f5x6-7qgp-jhf3. It is possible to read the advisory at github.com. This vulnerability is known as CVE-2023-37902 since 07/10/2023. The technical details are unknown and an exploit is not publicly available.
Upgrading to version 0.3.10 eliminates this vulnerability. Applying the patch 019a37ab98ff53f04fecfadf602b6cd5ac748f7f is able to eliminate this problem. The bugfix is ready for download at github.com. The best possible mitigation is suggested to be upgrading to the latest version.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
Product
Name
Version
License
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 5.3VulDB Meta Temp Score: 5.2
VulDB Base Score: 5.3
VulDB Temp Score: 5.1
VulDB Vector: 🔍
VulDB Reliability: 🔍
CNA Base Score: 5.3
CNA Vector (GitHub, Inc.): 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Reliability: 🔍
Exploiting
Class: Return valueCWE: CWE-252 / CWE-253
CAPEC: 🔍
ATT&CK: 🔍
Physical: No
Local: No
Remote: Yes
Availability: 🔍
Status: Not defined
EPSS Score: 🔍
EPSS Percentile: 🔍
Price Prediction: 🔍
Current Price Estimation: 🔍
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔍
Upgrade: Vyper 0.3.10
Patch: 019a37ab98ff53f04fecfadf602b6cd5ac748f7f
Timeline
07/10/2023 🔍07/26/2023 🔍
07/26/2023 🔍
07/26/2023 🔍
Sources
Advisory: GHSA-f5x6-7qgp-jhf3Status: Confirmed
CVE: CVE-2023-37902 (🔍)
GCVE (CVE): GCVE-0-2023-37902
GCVE (VulDB): GCVE-100-235411
Entry
Created: 07/26/2023 09:55Changes: 07/26/2023 09:55 (51)
Complete: 🔍
Cache ID: 216::103
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
No comments yet. Languages: en.
Please log in to comment.