The ownership of the contracts can be lost as the contracts inherits from the Adminable
contract and their ownership can be transferred in a single-step process.
If the nominated EOA account is not a valid account, it is entirely possible that the owner may accidentally transfer ownership to an uncontrolled account, losing the access to all functions with the onlyAdmin
modifier.
Contracts affected:
SablierV2Lockup
SablierV2LockupLinear
SablierV2LockupTranched
Manual Review
Consider using the Ownable2Step
library over the Adminable
or implementing similar two-step ownership transfer logic into the contract
https://docs.codehawks.com/hawks-auditors/how-to-determine-a-finding-validity
https://docs.codehawks.com/hawks-auditors/how-to-determine-a-finding-validity
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.