Normal Behavior: The protocol requires a valid ECDSA signature from the receiver to authorize the airdrop claim. This ensures that only the rightful owner (or an authorized delegate) can trigger the minting process.
Specific Issue: The internal function _isValidSignature calls ECDSA.tryRecover but fails to verify if the recovered address matches the receiver. The function returns the default state or ignores the result, allowing any arbitrary signature (or even dummy values for v, r, s) to pass the check and proceed to minting.
High: As proven in the Foundry test testFuzz_SignatureBypass, any random values for v, r, s are accepted by the contract, making the exploit accessible to anyone with zero cryptographic knowledge.
Impact:
High/Critical: This vulnerability breaks the primary access control of the airdrop. An attacker can claim Snowman NFTs for any eligible address in the Merkle Tree, effectively "stealing" the claim rights from legitimate users.
The contest is live. Earn rewards by submitting a finding.
Submissions are being reviewed by our AI judge. Results will be available in a few minutes.
View all submissionsThe contest is complete and the rewards are being distributed.