Vulnerability 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.
CVSS Score
HIGH
Affected Products
| Vendor | Product | Versions |
|---|---|---|
| Openzeppelin | Openzeppelin | >= 3.2.0, <= 4.4.0 |
Related Weaknesses (CWE)
References
- https://github.com/OpenZeppelin/openzeppelin-contracts/security/advisories/GHSA-Third Party Advisory
- https://github.com/OpenZeppelin/openzeppelin-contracts/security/advisories/GHSA-Third Party Advisory
FAQ
What is CVE-2021-46320?
CVE-2021-46320 is a vulnerability with a CVSS score of 7.5 (HIGH). 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 ...
How severe is CVE-2021-46320?
CVE-2021-46320 has been rated HIGH with a CVSS base score of 7.5/10. Review the CVSS metrics above for detailed severity breakdown.
Is there a patch for CVE-2021-46320?
Check the references section above for vendor advisories and patch information. Affected products include: Openzeppelin Openzeppelin.