The LikeRegistry::likeUser
function does not track the ETH deposited by users when they like someone. This results in an issue where, during a potential match, the matchRewards
function attempts to pool ETH from the userBalances
mapping, but since userBalances
is never updated, the pooled balance remains zero. Consequently, the ETH sent by users remains locked in the contract permanently with no mechanism for withdrawal.
Permanent ETH Lockup: Users' ETH payments remain trapped in the contract, with no function allowing withdrawals.
Empty MultiSig Wallets: Since matchRewards
relies on userBalances
, all MultiSig wallets created will have a zero balance, making them unusable.
Protocol Failure: The DatingDapp protocol specifies that matched users should receive a pooled balance in a shared MultiSig wallet. However, due to this bug, the intended feature does not function correctly.
userBalances
in likeUser
Modify the function to track ETH deposits correctly:
Likelihood: High, always. Impact: High, loss of funds
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.