The receive() function allows anyone to send Ether to the contract, and their balance (etherBalance) is updated. However, there is no check to ensure that the sender is a participant or authorized user.
An unauthorized user can deposit Ether without restrictions, potentially leading to inconsistency or misuse.
Any user can call the receive() function by sending Ether:
Ether balance is updated for the sender, even if they are not a participant.
This could lead to inconsistencies in participation logic.
Add a validation check to ensure that only participants (or eligible users) can deposit Ether via receive().
Example:
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.