Evmos's contract balance not updating correctly after interchain transaction
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 18.1.0
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: poc
- Automatable: yes
- Technical impact: partial
Summary
Evmos is the Ethereum Virtual Machine (EVM) Hub on the Cosmos Network. There is an issue with how to liquid stake using Safe which itself is a contract. The bug only appears when there is a local state change together with an ICS20 transfer in the same function and uses the contract's balance, that is using the contract address as the sender parameter in an ICS20 transfer using the ICS20 precompile. This is in essence the "infinite money glitch" allowing contracts to double the supply of Evmos after each transaction.The issue has been patched in versions >=V18.1.0.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: poc · Automatable: yes · Technical impact: partial
- Record last updated
Affected versions
- evmos evmos
through 18.0.0
- github.com/evmos/evmosGo
All versions
- github.com/evmos/evmos/v2Go
All versions
- github.com/evmos/evmos/v3Go
All versions
- github.com/evmos/evmos/v4Go
All versions
- github.com/evmos/evmos/v5Go
All versions
- github.com/evmos/evmos/v6Go
All versions
- github.com/evmos/evmos/v7Go
All versions
- github.com/evmos/evmos/v8Go
All versions
- github.com/evmos/evmos/v9Go
All versions
- github.com/evmos/evmos/v10Go
All versions
- github.com/evmos/evmos/v11Go
All versions
- github.com/evmos/evmos/v12Go
All versions
- github.com/evmos/evmos/v13Go
All versions
- github.com/evmos/evmos/v14Go
All versions
- github.com/evmos/evmos/v15Go
All versions
- github.com/evmos/evmos/v16Go
All versions
- github.com/evmos/evmos/v17Go
All versions
- github.com/evmos/evmos/v18Go
fixed in 18.1.0
- github.com/evmos/evmos/v17Go
fixed in 18.1.0
- github.com/evmos/evmos/v16Go
fixed in 18.1.0
- github.com/evmos/evmos/v15Go
fixed in 18.1.0
- github.com/evmos/evmos/v14Go
fixed in 18.1.0
- github.com/evmos/evmos/v13Go
fixed in 18.1.0
- github.com/evmos/evmos/v12Go
fixed in 18.1.0
- github.com/evmos/evmos/v11Go
fixed in 18.1.0
- github.com/evmos/evmos/v10Go
fixed in 18.1.0
- github.com/evmos/evmos/v9Go
fixed in 18.1.0
- github.com/evmos/evmos/v8Go
fixed in 18.1.0
- github.com/evmos/evmos/v7Go
fixed in 18.1.0
- github.com/evmos/evmos/v6Go
fixed in 18.1.0