Skip to content
This repository has been archived by the owner on Apr 4, 2024. It is now read-only.

Drainage of FeeCollector's Block Transaction Fees

High
prajjwol published GHSA-mx3r-7hpq-fr4g Dec 23, 2021

Package

gomod github.com/crypto-org-chain/cronos (Go)

Affected versions

<=0.6.4

Patched versions

0.6.5
gomod github.com/tharsis/ethermint (Go)
<=0.7.2,>=0.8.0 && <=0.9.0
0.7.3,0.10.0
gomod github.com/tharsis/evmos (Go)
<=0.4.2
None

Description

Impact

In Ethermint running versions before v0.7.3 or 0.8.x through 0.9.0, it is possible to take transaction fees from Cosmos SDK's FeeCollector for the current block by sending a custom-crafted MsgEthereumTx.

User funds and balances are safe.

Patches

This problem has been patched in Ethermint v0.7.3 on the mempool level.
The next version with state machine breaking changes (0.10.x) will patch it on the consensus level.

Workarounds

There are no tested workarounds. All software relying on Ethermint is recommended to upgrade to Ethermint v0.7.3 at their earliest possible convenience (or >0.10.0 if possible).

Credits

Thank you to @zb3 for reporting this issue on Cronos Immunefi Bug Bounty Program, to @cyril-crypto for reproducing the issue and to @yihuang and @thomas-nguy for patching the issue on the CheckTx (mempool) and the DeliverTx (consensus) levels.

For more information

If you have any questions or comments about this advisory:

Severity

High

CVE ID

CVE-2021-43839

Weaknesses

No CWEs

Credits