There is a vulnerability in the refund function that allows any user to steal the entrance fee of another user.
The vulnerability is located in the refund function, the refund amount is send to msg.sender instead of the player.
An attacker can simply call the refund function with the address of any active player, even if they are not the ones who actually paid the entrance fee. This will cause the attacker to receive the refund, and the actual player will lose their entrance fee.
The impact of this vulnerability is that it allows attackers to steal the entrance fees of other users.
Manual Analysis
Modify the refund function to send the funds to player address instead of msg.sender
reentrancy in refund() function
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.