in the Snowman.sol
contract, the mintSnowman()
function is declared external
and lacks any access control. This means anyone can call this function to mint any number of Snowman
NFTs to any address, bypassing the intended verification logic of the airdrop.
Likelihood:
This will occur as soon as an attacker identifies the publicly accessible mintSnowman()
function.
No ownership of Snow
tokens, Merkle proof, or signature is required to exploit.
Impact:
Any user can mint an unlimited number of NFTs at zero cost, undermining scarcity and trust.
The economic model designed around staking Snow
and gated airdrops becomes obsolete.
Restrict the mintSnowman()
function to only be callable by the SnowmanAirdrop
contract:
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.