GHSA-878m-3g6q-594q
OpenZeppelin Contracts contains Incorrect Calculation
Packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| npm | @openzeppelin/contracts | >= 4.8.0, < 4.8.2 | 4.8.2 |
| npm | @openzeppelin/contracts-upgradeable | >= 4.8.0, < 4.8.2 | 4.8.2 |
Details
As written in the advisory (Markdown source, shown as plain text).
### Impact
The ERC721Consecutive contract designed for minting NFTs in batches does not update balances when a batch has size 1 and consists of a single token. Subsequent transfers from the receiver of that token may overflow the balance as reported by `balanceOf`.
The issue exclusively presents with batches of size 1.
### Patches
The issue has been patched in 4.8.2.
<!-- ### References -->
References
External links from the advisory. They lead to third-party sites.
- https://github.com/OpenZeppelin/openzeppelin-contracts/security/advisories/GHSA-878m-3g6q-594q
- https://nvd.nist.gov/vuln/detail/CVE-2023-26488
- https://github.com/OpenZeppelin/openzeppelin-contracts/commit/167bf67ed3907f4a674043496019fa346cee7705
- https://github.com/OpenZeppelin/openzeppelin-contracts
- https://github.com/OpenZeppelin/openzeppelin-contracts/releases/tag/v4.8.2