The functions starkingPool.sol::strategyDeposit and starkingPool.sol::strategyWithdraw have incorrect access control. According to the documentation, the strategy contracts are managed by the pool, which is the priorityPool. As a result, the strategyDeposit and strategyWithdraw functions in starkingPool.sol should not be restricted by the onlyOwner modifier, as the strategy contracts are controlled by the pool, specifically the priorityPool, rather than by an owner.
This restricts the function to being called by onlyOwner, which limits scalability since the strategy is actually controlled by the pool, not the owner.
Manual Review
The recommended solution for this vulnerability is to replace the onlyOwner modifier with the onlyPriorityPool modifier.
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.