Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

Vulnerabilidad en la función "DeleteAccount" en Ethermint (CVE-2022-35936)

Gravedad CVSS v3.1:
MEDIA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
05/08/2022
Última modificación:
13/08/2022

Descripción

Ethermint es una biblioteca de Ethereum. En las versiones de Ethermint anteriores a "v0.17.2", la invocación del contrato "selfdestruct" elimina permanentemente el bytecode correspondiente del almacenamiento interno de la base de datos. Sin embargo, debido a un error en la función "DeleteAccount", todos los contratos que usaban el mismo bytecode (es decir, compartían el mismo "CodeHash") también dejarán de funcionar una vez que un contrato invoque "selfdestruct", aunque los demás contratos no hayan invocado el OPCODE "selfdestruct". Esta vulnerabilidad ha sido parcheada en Ethermint versión v0.18.0. El parche presenta cambios que rompen el estado de las aplicaciones que usan Ethermint, por lo que es requerido un procedimiento de actualización coordinado. Se presenta una mitigación alternativa. Si un contrato es objeto de DoS debido a este problema, el usuario puede volver a desplegar el mismo contrato, es decir, con idéntico bytecode, de modo que sea recuperado el código del contrato original. El nuevo despliegue del contrato restaura la entrada "bytecode hash -) bytecode" en el estado interno

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:a:evmos:ethermint:*:*:*:*:*:*:*:* 0.18.0 (excluyendo)
cpe:2.3:a:kava:kava:*:*:*:*:*:*:*:* 0.18.0 (excluyendo)
cpe:2.3:a:crypto:cronos:*:*:*:*:*:*:*:* 0.7.0 (incluyendo)
cpe:2.3:a:evmos:evmos:*:*:*:*:*:*:*:* 7.0.0 (excluyendo)