{"id":"GHSA-wmpv-c2jp-j2xg","aliases":[],"url":"https://o3.security/vulnerability/GHSA-wmpv-c2jp-j2xg","summary":"ERC1155Supply vulnerability in OpenZeppelin Contracts","details":"When ERC1155 tokens are minted, a callback is invoked on the receiver of those tokens, as required by the spec. When including the `ERC1155Supply` extension, total supply is not updated until after the callback, thus during the callback the reported total supply is lower than the real number of tokens in circulation.\n\n### Impact\nIf a system relies on accurately reported supply, an attacker may be able to mint tokens and invoke that system after receiving the token balance but before the supply is updated.\n\n### Patches\nA fix is included in version 4.3.3 of `@openzeppelin/contracts` and `@openzeppelin/contracts-upgradeable`.\n\n### Workarounds\nIf accurate supply is relevant, do not mint tokens to untrusted receivers.\n\n### Credits\nThe issue was identified and reported by @ChainSecurityAudits.\n\n### For more information\nRead [TotalSupply Inconsistency in ERC1155 NFT Tokens](https://medium.com/chainsecurity/totalsupply-inconsistency-in-erc1155-nft-tokens-8f8e3b29f5aa) by @ChainSecurityAudits for a more detailed breakdown.\n\nIf you have any questions or comments about this advisory, email us at security@openzeppelin.com.","published":"2021-11-15T23:28:18Z","modified":"2021-11-15T22:27:38Z","cvss":null,"epss":null,"cisaKev":null,"exploitsKnown":0,"affectedPackages":[{"ecosystem":"npm","name":"@openzeppelin/contracts","fixedVersion":"4.3.3"},{"ecosystem":"npm","name":"@openzeppelin/contracts-upgradeable","fixedVersion":"4.3.3"}],"fix":null,"references":[{"type":"WEB","url":"https://github.com/OpenZeppelin/openzeppelin-contracts/security/advisories/GHSA-wmpv-c2jp-j2xg"},{"type":"PACKAGE","url":"https://github.com/OpenZeppelin/openzeppelin-contracts"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2021-11-15T22:27:38Z"}}