In this project, no mechanism has been implemented to check whether the transfers have failed or not. Not all token contracts revert on failure; instead, they return false. A good example of such a token is ZRX.
In the event of a failure, the contract does not genuinely receive the tokens; instead, it updates the user's balances, leading to a loss of funds. Consequently, the user can potentially amplify the impact by claiming reward tokens for a fake deposit.
Foundry, Remix
Use SafeERC20, or ensure that the transfer/transferFrom return value is checked. Perform checks against all the instances.
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.