The changeOwner() has no restrictions, so anyone can change owner to steall all funds.
The changeOwner()
function does not include an ownership check or any form of access control. This means that any user who interacts with the contract can call this function and change the contract's owner to any address, including their own.
Malicious users can take over the contract by setting themselves as the owner and steal all funds.
Manual Review
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.