The initialize() functions are not protected by a modifier, which allow attackers to call this function once the contract is deployed through the proxy.
function initialize() initializer public {}
Malicious users can front run the smart vault creating forcing the deployers to redeploy. The process can be repeated, which costs the malicious user less than it would the protocol owners, potentially unnecessarily draining funds from the development team.
Manual Code Review
Consider adding modifiers to protect this function or create a contract that both deploy the project and initialize it on the same transaction.
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.