Description
OpenZeppelin Contracts is a library for smart contract development. In affected versions upgradeable contracts using `UUPSUpgradeable` may be vulnerable to an attack affecting uninitialized implementation contracts. A fix is included in version 4.3.2 of `@openzeppelin/contracts` and `@openzeppelin/contracts-upgradeable`. For users unable to upgrade; initialize implementation contracts using `UUPSUpgradeable` by invoking the initializer function (usually called `initialize`). An example is provided [in the forum](https://forum.openzeppelin.com/t/security-advisory-initialize-uups-implementation-contracts/15301).
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| OpenZeppelin | openzeppelin-contracts | >= 4.1.0 < 4.3.2 | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| npm | @openzeppelin/contracts | >= 4.1.0, < 4.3.2 | 4.3.2 | GHSA-5vp3-v4hc-gx76 |
| npm | @openzeppelin/contracts-upgradeable | >= 4.1.0, < 4.3.2 | 4.3.2 | GHSA-5vp3-v4hc-gx76 |