Without the `initializer` modifier, there is a risk that the initialization function can be called multiple times.
Several contracts have the same issue:
TokenManager.sol
SystemConfig.sol
The contracts can be initializer again
Manual code review
Always use the `initializer` modifier for initialization functions in proxied contracts and ensure they're called once during deployment.
Aside from `Rescuable.sol` being OOS, this is invalid based on codehawks guidelines regarding unprotected initializers. Additionally, this should be called concurrently when deploying a new proxy, but this submissions does not identify that particular issue of an uninitialized owner for proxy contracts
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.