Unbounded array can Out Of Gas and or DOS contracts
enterRaffle takes an unbounded user input array. A user can add many accounts under their control that are plenty until the size of "state variable players" becomes so large.
Many functions like enterRAffle relying on looping through players array can run out of gas
This implies this attack can DOS the contracts and ensure no one else can enter the raffle anymore. We might feel attacker may be losing ETH as they need to send in ETH for every address. However, the refund function does not rely on loopig through players as it requires indexes. Therefore attacker can simply refund themselves all their money for the addresses they input under their control.
Manual Analysis
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.