Description: This vulnerability which is shown in the _executeTransaction
function that allows any transaction signer (including a compromised owner) to execute arbitrary calls to any address with any data and value. This can be exploited to drain the wallet's funds or interact with other contracts in unintended ways.
Impact:
An attacker gains access to the owner's private key through phishing or other means.
The attacker creates a transaction that transfers all funds to their address.
The attacker signs this transaction with the compromised key.
The attacker calls executeTransactionFromOutside with the malicious transaction.
The wallet executes the transaction, transferring all funds to the attacker.
Recommended Mitigation:
Implement a whitelist of allowed addresses and function signatures that can be called.
This could be done by adding a mapping of approved addresses and functions.
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.