There is no constructor in SmartVaultManagerV5.sol
and so there is no _disableInitializers();
function being called.
As stated in the OpenZeppelin Docs:
Initializing the Implementation Contract Do not leave an implementation contract uninitialized. An uninitialized implementation contract can be taken over by an attacker, which may impact the proxy. To prevent the implementation contract from being used, you should invoke the _disableInitializers function in the constructor to automatically lock it when it is deployed:
https://docs.openzeppelin.com/upgrades-plugins/1.x/writing-upgradeable#use-upgradeable-libraries
Contract can be hijacked by calling initialize()
function.
Manual review
Add :
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.