The ChoosingRam::increaseValuesOfParticipants function uses a predictable and manipulable source of randomness, leading to unfair and biased outcomes.
The function relies on block.timestamp, block.prevrandao, and msg.sender to generate a random number. These sources are predictable and can be manipulated by the caller, resulting in biased and unfair randomness.
The challenger can win by entering when the random number is 0.
Manual review
Use a more secure source of randomness, such as Chainlink VRF (Verifiable Random Function), to ensure that the random number generation is truly random and cannot be manipulated.
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.