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

Vulnerabilidad en OpenZeppelin Contracts (CVE-2022-39384)

Gravedad CVSS v3.1:
MEDIA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
04/11/2022
Última modificación:
06/12/2022

Descripción

OpenZeppelin Contracts es una librería para el desarrollo seguro de contratos inteligentes. Antes de la versión 4.4.1 pero después de la 3.2.0, las funciones de inicialización que se invocan por separado de la creación del contrato (el ejemplo más destacado son los servidores proxy mínimos) se pueden volver a ingresar si realizan una llamada externa sin vista que no sea de confianza. Una vez que un inicializador ha terminado de ejecutarse, nunca podrá volver a ejecutarse. Sin embargo, una excepción implementada para admitir la herencia múltiple hizo posible la reentrada en el escenario descrito anteriormente, rompiendo la expectativa de que haya una ejecución única. Tenga en cuenta que los proxies actualizables normalmente se inicializan junto con la creación del contrato, donde la reentrada no es factible, por lo que se cree que el impacto de este problema es menor. Este problema ha sido solucionado; actualice a la versión 4.4.1. Como workaround, evite llamadas externas que no sean de confianza durante la inicialización.

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:a:openzeppelin:contracts:*:*:*:*:*:node.js:*:* 3.2.0 (incluyendo) 4.4.1 (excluyendo)
cpe:2.3:a:openzeppelin:contracts_upgradeable:*:*:*:*:*:node.js:*:* 3.2.0 (incluyendo) 4.4.1 (excluyendo)