Randomness is calculated using on-chain information in selectWinner()
Anyone can call the selectWinner() function and because the winner is selected by using on-chain information the "random" index of the winner could be predicted. Additionally in PoS the block.difficulty==0 always additionally making the randomness wicker.
Winner's index could be engineered.
Manual review
Use Chainlink VRF for randomness
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.