The NFT contract implements token minting using the _mint
function rather than _safeMint
. While testing confirms that the current implementation allows NFTs to be successfully minted to contract addresses and subsequently transferred/withdrawn, this approach deviates from ERC-721 best practices.
Low: The current implementation functions correctly while minting to EOA's. However, using _mint
instead of _safeMint
creates a risk that tokens could become permanently locked if minted to a contract that doesn't support ERC-721 tokens but wasn't tested in the current implementation.
Manual review
Replace _mint
with _safeMint
to follow industry best practices and prevent potential token lockup scenarios:
Protocol doesn't check if recipient contracts can handle ERC721 tokens
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.