In this MultiSigWallet
with only two owners, each transaction typically requires approval from both parties before execution. However, if the contract does not include a revokeApproval
function, an owner who has previously approved a transaction has no way to withdraw their approval before execution. This can lead to several issues.
If one owner changes their mind about a transaction after approving it, they have no way to revoke their decision. Also, The second owner can execute the transaction at any time, even if circumstances of the date have changed.
In this contract, once an owner approves a transaction, they have no way to revoke it.
To address this issue, a revokeApproval
function should be implemented, allowing owners to withdraw their approval before execution.
Please read the CodeHawks documentation to know which submissions are valid. If you disagree, provide a coded PoC and explain the real likelihood and the detailed impact on the mainnet without any supposition (if, it could, etc) to prove your point.
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.