Winner selection can be manipulated. It's not random as expected.
While calculating the random winnerIndex to select winner, it's using block.timestamp and some other factors to create a hash, but the issue is, all variables are known beforehand, so any address can calculate the correct block number in which that will be selected as winner, and winner manipulation can happen.
Winner selection is not random, so any person can be selected as winner multiple times.
Manual Inspection
Use Chainlink VRF for generating true random numbers and use that for winner selection.
Root cause: bad RNG Impact: manipulate winner
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.