Unchecked return value of token.transferFrom() in fundContest allows a pot to appear funded when it holds no tokens
Description: fundContest calls token.transferFrom() without checking its return value.
If the transfer silently fails, the Pot contract holds no tokens but contestToTotalRewards still reflects the full amount. All subsequent claimCut() calls will fail or draw from incorrect balances.
Likelihood:
Occurs whenever a non-standard ERC20 token that returns false instead of reverting is used
The protocol accepts any IERC20 token with no whitelist or validation
Impact:
The pot is marked as funded but holds no tokens
All player claim attempts will fail, effectively bricking the entire contest
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.