CVE-2022-35936

High

Description

Ethermint is an Ethereum library. In Ethermint running versions before `v0.17.2`, the contract `selfdestruct` invocation permanently removes the corresponding bytecode from the internal database storage. However, due to a bug in the `DeleteAccount`function, all contracts that used the identical bytecode (i.e shared the same `CodeHash`) will also stop working once one contract invokes `selfdestruct`, even though the other contracts did not invoke the `selfdestruct` OPCODE. This vulnerability has been patched in Ethermint version v0.18.0. The patch has state machine-breaking changes for applications using Ethermint, so a coordinated upgrade procedure is required. A workaround is available. If a contract is subject to DoS due to this issue, the user can redeploy the same contract, i.e. with identical bytecode, so that the original contract's code is recovered. The new contract deployment restores the `bytecode hash -> bytecode` entry in the internal state.

SeverityHigh
CVSS8.2
Exploit probability—
ProductEvmos Ethermint
PublishedAug 5, 2022
First seenAug 5, 2022
Weakness typeCWE-668CWE-668

How to fix

Update
  • evmos ethermint0.18.0 or later
  • kava kava0.18.0 or later
  • evmos evmos7.0.0 or later
  • github.com/evmos/ethermint0.18.0 or later
  • github.com/evmos/evmos7.0.0 or later
  • github.com/crypto-org-chain/cronos0.7.1-rc2 or later
  • github.com/Kava-Labs/kava0.18.0 or later
  • github.com/evmos/evmos/v77.0.0 or later
  • github.com/kava-labs/kava0.18.0 or later

Affected products

ProductAffected versionsFixed in
evmos ethermintv < 0.18.00.18.0
kava kavav < 0.18.00.18.0
crypto cronosv ≤ 0.7.0—
evmos evmosv < 7.0.07.0.0
github.com/evmos/ethermintGov < 0.18.00.18.0
github.com/evmos/evmosGov < 7.0.0, No range specified7.0.0
github.com/crypto-org-chain/cronosGov < 0.7.1-rc20.7.1-rc2
github.com/Kava-Labs/kavaGov < 0.18.00.18.0
github.com/evmos/evmos/v2GoNo range specified—
github.com/evmos/evmos/v3GoNo range specified—
github.com/evmos/evmos/v4GoNo range specified—
github.com/evmos/evmos/v5GoNo range specified—
github.com/evmos/evmos/v6GoNo range specified—
github.com/evmos/evmos/v7Gov < 7.0.07.0.0
github.com/kava-labs/kavaGov < 0.18.00.18.0

Check your version

Choose the product and enter the version you run to see whether it falls in the affected range.

In the Intelligence 360 plan

Attack Surface Management

See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.