Proxy admin privileges are inadequately secured, risking malicious upgrades
The PerpsEngine
and MarketMakingEngine
root proxies might allow admin takeover if transferOwnership()
is unprotected or initialize()
is callable post-deployment
An attacker could upgrade contracts to steal funds or disable security mechanisms
Manual review of proxy initialization logic
Use OpenZeppelin’s TransparentUpgradeableProxy
with a timelock for upgrades. Ensure initialize()
is called only once
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.