CVE-2024-39696: Evmos vulnerable to exploit of smart contract account and vesting
8.8
CVSS Score
3.1
Basic Information
CVE ID
GHSA ID
EPSS Score
0.30022%
CWE
Published
7/10/2024
Updated
8/9/2024
KEV Status
No
Technology
Go
Technical Details
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
| Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
|---|---|---|---|
| github.com/evmos/evmos/v18 | go | <= 18.0.1 | 19.0.0 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stemmed from improper authorization checks in the fundVestingAccount function. The original implementation validated the contract caller's authorization but used the message-specified funder address for actual fund transfers. This mismatch allowed attackers to create vesting accounts with arbitrary funders without proper authorization. The patch added critical validation that restricts the funder to either the transaction origin (EOA) or the contract caller when invoked through a smart contract, addressing the improper authorization (CWE-863).