{"cve":"CVE-2022-35936","nvd":{"published":"2022-08-05T13:15:08.137","modified":"2026-06-17T04:52:33.510","status":"Modified","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.","cvss_v4":null,"cvss_v3":{"version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L","score":5.3},"cwes":["CWE-668"],"references":["https://github.com/evmos/ethermint/blob/c9d42d667b753147977a725e98ed116c933c76cb/x/evm/keeper/statedb.go#L199-L203","https://github.com/evmos/ethermint/commit/144741832007a26dbe950512acbda4ed95b2a451","https://github.com/evmos/ethermint/security/advisories/GHSA-f92v-grc2-w2fg","https://github.com/evmos/ethermint/blob/c9d42d667b753147977a725e98ed116c933c76cb/x/evm/keeper/statedb.go#L199-L203","https://github.com/evmos/ethermint/commit/144741832007a26dbe950512acbda4ed95b2a451"],"products":["crypto:cronos","evmos:ethermint","evmos:evmos","kava:kava"],"source":"nvd","synced_at":"2026-10-19T21:34:18.502168378+00:00"},"epss":{"cve":"CVE-2022-35936","score":0.01468,"percentile":0.7372,"date":"2026-11-01"},"kev":null,"osv":[{"id":"GHSA-f92v-grc2-w2fg","url":"https://osv.dev/vulnerability/GHSA-f92v-grc2-w2fg","summary":"Ethermint vulnerable to DoS through unintended Contract Selfdestruct","modified":"2024-08-21T15:41:39.047766Z","packages":[{"ecosystem":"Go","name":"github.com/evmos/ethermint","purl":"pkg:golang/github.com/evmos/ethermint","ranges":["<0.18.0"],"fixed":["0.18.0"]},{"ecosystem":"Go","name":"github.com/evmos/evmos","purl":"pkg:golang/github.com/evmos/evmos","ranges":["<7.0.0"],"fixed":["7.0.0"]},{"ecosystem":"Go","name":"github.com/crypto-org-chain/cronos","purl":"pkg:golang/github.com/crypto-org-chain/cronos","ranges":["<0.7.1-rc2"],"fixed":["0.7.1-rc2"]},{"ecosystem":"Go","name":"github.com/Kava-Labs/kava","purl":"pkg:golang/github.com/Kava-Labs/kava","ranges":["<0.18.0"],"fixed":["0.18.0"]}]},{"id":"GO-2022-0760","url":"https://osv.dev/vulnerability/GO-2022-0760","summary":"Ethermint vulnerable to DoS through unintended Contract Selfdestruct in github.com/crypto-org-chain/cronos","modified":"2026-03-03T04:52:15.012922Z","packages":[{"ecosystem":"Go","name":"github.com/crypto-org-chain/cronos","purl":"pkg:golang/github.com/crypto-org-chain/cronos","ranges":["<0.7.1-rc2"],"fixed":["0.7.1-rc2"]},{"ecosystem":"Go","name":"github.com/evmos/ethermint","purl":"pkg:golang/github.com/evmos/ethermint","ranges":["<0.18.0"],"fixed":["0.18.0"]},{"ecosystem":"Go","name":"github.com/evmos/evmos","purl":"pkg:golang/github.com/evmos/evmos","ranges":["all versions"],"fixed":[]},{"ecosystem":"Go","name":"github.com/evmos/evmos/v2","purl":"pkg:golang/github.com/evmos/evmos/v2","ranges":["all versions"],"fixed":[]},{"ecosystem":"Go","name":"github.com/evmos/evmos/v3","purl":"pkg:golang/github.com/evmos/evmos/v3","ranges":["all versions"],"fixed":[]},{"ecosystem":"Go","name":"github.com/evmos/evmos/v4","purl":"pkg:golang/github.com/evmos/evmos/v4","ranges":["all versions"],"fixed":[]},{"ecosystem":"Go","name":"github.com/evmos/evmos/v5","purl":"pkg:golang/github.com/evmos/evmos/v5","ranges":["all versions"],"fixed":[]},{"ecosystem":"Go","name":"github.com/evmos/evmos/v6","purl":"pkg:golang/github.com/evmos/evmos/v6","ranges":["all versions"],"fixed":[]},{"ecosystem":"Go","name":"github.com/evmos/evmos/v7","purl":"pkg:golang/github.com/evmos/evmos/v7","ranges":["<7.0.0"],"fixed":["7.0.0"]},{"ecosystem":"Go","name":"github.com/kava-labs/kava","purl":"pkg:golang/github.com/kava-labs/kava","ranges":["<0.18.0"],"fixed":["0.18.0"]}]}],"attribution":["This product uses the NVD API but is not endorsed or certified by the NVD.","EPSS scores: FIRST Exploit Prediction Scoring System, https://www.first.org/epss","Known exploited vulnerabilities: CISA Known Exploited Vulnerabilities Catalog, https://www.cisa.gov/known-exploited-vulnerabilities-catalog","Package advisories: OSV (https://osv.dev), from the GitHub Advisory Database, PyPA, Go, RustSec and other ecosystem databases, under CC-BY 4.0 or CC0","CVE records: the CVE Program's CVE List (https://www.cve.org), under its terms of use (https://www.cve.org/Legal/TermsOfUse). CVE is a registered trademark of The MITRE Corporation; this product is not affiliated with the CVE Program."]}