The StabilityPool::onlyManagerOrOwner modifier incorrectly uses the && operator instead of ||, which results in unintended access denial for authorized users. This logic flaw prevents either managers or the owner from executing protected functions if they are not both true.
The modifier is intended to allow access if msg.sender is either a manager or the owner.
The current logic requires both conditions to be false to revert, which is contrary to the intended access control.
Access Denial: Authorized users (managers or the owner) may be unable to perform critical operations, leading to operational inefficiencies.
Security Risk: The incorrect logic could inadvertently allow unauthorized users to execute functions if access control is not properly enforced elsewhere.
Affected Parties: Managers and the owner who rely on executing privileged functions will be impacted by this access control flaw.
If the logic is intended, rename the modifier to onlyManagerAndOwner to reflect the requirement for both roles to be true.
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.