Weather Witness

First Flight #40
Beginner FriendlyFoundrySolidityNFT
100 EXP
View results
Submission Details
Impact: low
Likelihood: high
Invalid

Unsafe `ERC721::_mint()`

Description: The contract calls '_mint(msg.sender, tokenId)' rather than '_safeMint', allowing tokens to be sent to contracts that don't implement 'onERC721Received'.

Impact: NFTs can be irrecoverably locked in non-compliant contracts.

Recommended Mitigation: Use the safe variant:

_safeMint(msg.sender, tokenId)
Updates

Appeal created

bube Lead Judge 4 months ago
Submission Judgement Published
Invalidated
Reason: Non-acceptable severity
Assigned finding tags:

[Invalid] Use of `_mint` istead of `_safeMint`

The `fulfillMintRequest` function is external and anyone can call it. If the protocol uses `_safeMint` instead of `_mint`, this introduces a reentrancy risk. It is better to use `_mint` and the caller is responsible for being able to obtain the token.

Support

FAQs

Can't find an answer? Chat with us on Discord, Twitter or Linkedin.