Whitelisted tokens cannot be changed. If there is an issue with a token, say a token-depeg scenario, and the protocol doesn't want the organizers/sponsors to use that token anymore, the protocol team cannot change the whitelisted tokens.
In ProxyFactory.sol, the whitelisted tokens are sent as inputs in a constructor:
The whitelisted tokens are then stored in the mapping as shown below:
There is no way that anyone can change the whitelistedTokens anymore. In order to change it, the whole ProxyFactory must be overhauled, which is pretty troublesome to do.
Whitelisted tokens cannot be delisted and new tokens cannot be whitelisted, limiting the flexibility of the protocol. If JPYC decides to have a new version, or USDC/USDT decides to upgrade, then the protocol cannot change accordingly
Manual Review
As the owner is already a centralization risk, there isn't more harm in letting the owner set the whitelisted tokens since the owner has to be trusted anyways. The added function should look something like this, where the owner can update the whitelistedTokens mapping easily.
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.