PuppyRaffle
uses single-step ownership for the changeFeeAddress()
function
The PuppyRaffle::changeFeeAddress()
function is used to change and set the feeAddress
to the newly passed fee address from the function parameter. The problem is that there is a change in passing the wrong address as a function parameter, which will result in transferring the fees from the contract to the wrong address.
There is a posibility of passing the wrong feeAddress
as a function parameter
Manual Review
One best practice here is to use a two-step ownership transfer pattern, which simply means that the transfer of the feeAddress
will get to pending status, and then the new feeAddress
owner should accept that, otherwise the address won't change. Also, the current owner can approve the 'newFeeAddress', and then the newFeeAddress
can claim the pending ownership.
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.