In OpenZeppelin <=v4.4.0, initializer functions that are invoked separate from contract creation (the most prominent example being minimal proxies) may be reentered if they make an untrusted non-view external call. Once an initializer has finished running it can never be re-executed. However, an exception put in place to support multiple inheritance made reentrancy possible, breaking the expectation that there is a single execution.
Advisories
Source ID Title
EUVD EUVD EUVD-2022-0912 In OpenZeppelin <=v4.4.0, initializer functions that are invoked separate from contract creation (the most prominent example being minimal proxies) may be reentered if they make an untrusted non-view external call. Once an initializer has finished running it can never be re-executed. However, an exception put in place to support multiple inheritance made reentrancy possible, breaking the expectation that there is a single execution.
Github GHSA Github GHSA GHSA-88g8-f5mf-f5rj Improper Initialization in OpenZeppelin
Fixes

Solution

No solution given by the vendor.


Workaround

No workaround given by the vendor.

History

No history.

Projects

Sign in to view the affected projects.

cve-icon MITRE

Status: PUBLISHED

Assigner: mitre

Published:

Updated: 2024-08-04T05:02:11.583Z

Reserved: 2022-01-18T00:00:00

Link: CVE-2021-46320

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Modified

Published: 2022-02-04T12:15:07.623

Modified: 2024-11-21T06:33:52.607

Link: CVE-2021-46320

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

No data.

Weaknesses