Due to insufficient validation in collectPresent
function a user can claim Santa's NFTs or Tokens multiple times
In the above poc, a user can pass the ```` if (balanceOf(msg.sender) > 0) validation and call the
collectPresent``` function as many times as possible by simply transferring the claimed NFT to a desired address after each claim.
User can claim an infinite amout of tokens and NFTs
Manual Review
Possible solution: Introduce a mapping that tracks if a user has successfully claimed rewards once and use that mapping as a validation in the collectPresent
function.
Relying on balanceOf > 0 in collectPresent() allows the msg.sender to send their present to another address and then collect again.
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.