The likeUser()
function requires users to send 1 ETH, but does not update userBalances[msg.sender]
. This results in incorrect reward distribution in matchRewards()
, leading to zero or miscalculated rewards for matched users.
Problem:
The function accepts ETH but does not store the amount sent by msg.sender
.
When matchRewards()
is called, userBalances[msg.sender]
remains 0, leading to zero rewards.
Matched users may receive less than expected rewards, or rewards may go unclaimed.
Incorrect reward distribution: Users may receive no rewards despite contributing ETH.
Potential user dissatisfaction: Users may lose trust in the dApp.
Financial loss risk: Funds may get stuck in the contract instead of being distributed.
Manual Review
Store ETH sent by users when they like someone.
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.