Description
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.
Analysis and contextual insights are available on OpenCVE Cloud.
Remediation
No vendor fix or workaround currently provided.
Additional remediation guidance may be available on OpenCVE Cloud.
Tracking
Sign in to view the affected projects.
Advisories
| Source | ID | Title |
|---|---|---|
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 |
GHSA-88g8-f5mf-f5rj | Improper Initialization in OpenZeppelin |
References
History
No history.
Status: PUBLISHED
Assigner: mitre
Published:
Updated: 2024-08-04T05:02:11.583Z
Reserved: 2022-01-18T00:00:00.000Z
Link: CVE-2021-46320
No data.
Status : Modified
Published: 2022-02-04T12:15:07.623
Modified: 2024-11-21T06:33:52.607
Link: CVE-2021-46320
No data.
OpenCVE Enrichment
No data.
Weaknesses
EUVD
Github GHSA