In OpenZeppelin <=v4.4.0, initializer functions that are invoked separate from contract…
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- —
- Confidentiality · integrity · availability
- None · High · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · NVD. Fix status from CNA and GitHub.
Summary
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.
Why it matters now
SSVC decision points
Not available: CISA has not published SSVC decision points for this record.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| — | — | all versions | — | No fix listed | CNA |
| — | @openzeppelin/contracts (npm) | before 4.4.1 | 4.4.1 | Patch available | GHSA-88g8-f5mf-f5rj |
- — Vendor— Affected all versions Fixed in — No fix listed CNA
- @openzeppelin/contracts (npm) Vendor— Affected before 4.4.1 Fixed in 4.4.1 Patch available GHSA-88g8-f5mf-f5rj
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:openzeppelin:openzeppelin:*:*:*:*:*:*:*:* | 3.2.0 – 4.4.0 | Vulnerable | OpenZeppelin |
- cpe:2.3:a:openzeppelin:openzeppelin:*:*:*:*:*:*:*:* Versions 3.2.0 – 4.4.0 Vulnerable ·OpenZeppelin
Remediation
- Fix · GHSA-88g8-f5mf-f5rj @openzeppelin/contracts (npm) Fixed in 4.4.1 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2021-46320
- 2026-10-03 Alias added: GHSA-88g8-f5mf-f5rj
References
Advisory 2
Sources
- CVE-2021-46320 · CVE Program
- CVE-2021-46320 · NVD
- FIRST EPSS
- GHSA-88g8-f5mf-f5rj · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences