All contract initializers were missing access controls, allowing any user to initialize the contract. Leaving functions vulnerable to frontrunning attackers.
Initializers could be front-run, allowing an attacker to either set their own values, take ownership of the contract, and in the best case forcing a re-deployment.
Context: SmartVaultManagerV5::initialize
Context: utils/SmartVaultManager::initialize
Attacker can either set their own values, take ownership of the contract, and in the best case forcing a re-deployment.
Manual Review, 4naly3er
Provide access control in initialize
function.
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.