Possible loss of ownership.
See here a reference for this exact issue.
When transferring the ownership of the protocol, no checks are performed
on whether the new address is valid and active.
https://github.com/Cyfrin/2023-07-beedle/blob/main/src/utils/Ownable.sol#L19C4-L22C6
In case there is a mistake
when transferring the ownership, the whole protocol is locked out of its
permissioned functionalities.
Manual review
The transfer of ownership process should be divided into two separate transactions. The first transaction involves calling the requestTransferOwnership
function to propose a new owner for the protocol. The second transaction requires the new owner to accept the proposal by calling the acceptsTransferOwnership
function. This approach ensures a secure and controlled transfer of ownership for the protocol.
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.