There is no randomness in selecting the winner.
In selectWinner function at line139
uint256 rarity = uint256(keccak256(abi.encodePacked(msg.sender, block.difficulty))) % 100;
The block.difficulty
will not be changing in Proof of stake. So there won't be any randomness.
The winner can be predicted earlier.
Foundry
Git
Manual review
Avoid using static or predictable variables in generating random values.
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.