BoostController.updateUserBoost() can be called on behalf of other user
There is no access control in updateUserBoost() function, which allows to update the boost value of a user for a pool, both passed as parameters. This allows anybody to update/delete the boosted value for desired user and pool in a not suitable moment, which can be used by malicious users to break the expected operation mode of the contract.
Malicious user can update the boost value of input user and pool or set the boost value of a user who has a high voting power for a pool that owner of that voting power does not wish.
Manual review
Add access control to updateUserBoost() function (so that only a trusted address can set boost values) or do not allow `user` as a parameter and use `msg.sender`:
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.