The Ether transfer (Interaction) is performed before the contract's internal state (Effects) is updated. This means that if a reentrancy attack is performed via the user's fallback function or receive function, the user could potentially call claimAllRewards again before their rewards are removed, allowing them to claim the same rewards multiple times.
Tools Used :
Slither, Wake, Foundry
Recommendations :
To respect the CEI model, the order of Effects and Interactions must be reversed:
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.