After users set selectedRam by calling ChoosingRam::increaseValuesOfParticipants (using semi-randomization which is a part of another issue) and setting the selectedRam state variable, there is no statement, changing the isRamSelected bool to true. This leads to ChoosingRam::selectRamIfNotSelected passing, when called by Organiser, making possible for Organiser to change again the value of selectedRam.
We should consider that Organiser could call this function by accident or with malicious intent.
Although ChoosingRam::selectRamIfNotSelected uses some kind of (semi-)randomization the random variable of ChoosingRam::selectRamIfNotSelected could be manipulated.
In both scenarios this is a serious centralization issue, breaking the protocol`s intended purpose and decentralization as a whole.
Paste the following code in the Dussehra.t.sol:
Consider adding a line of code that changes the isRamSelected bool to true in ChoosingRam::increaseValuesOfParticipants
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.