Snowman::mintSnowman
Lacks access control, allowing anyone, including selected participants, to mint Snowman NFT arbitrarily, which breaks one of the protocol's hidden invariants
When a user comes across the function Snowman::mintSnowman
They can abuse the function by minting a large number of Snowman NFTs. The Protocol intends to reward users only through its staking mechanism, but it appears there is an obvious breach through the mintSnowman function, lacking access control
Likelihood:
This would occur when users call Snowman::mintSnowman
directly
Impact:
Users end up with a large number of Snowman NFTs without having to stake Snow ERC20 tokens
Add this test to the TestSnowman Foundry Test suites, then add the Attacker Contract inheriting the IERC721Receiver interface from openzeppelin to receive the NFTs
The Snowman NFT contract is supposed to be owned by the SnowmanAirdrop contract, and a check is meant to be applied to ensure only the SnowmanAirdrop contract can call mintSnowman to reward selected participants
The mint function of the Snowman contract is unprotected. Hence, anyone can call it and mint NFTs without necessarily partaking in the airdrop.
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.