The prize pool is send to the winner, so the success of the PuppyRaffle::selectWinner function depends on the winner fallback function.
The winner can revert or provoke a DoS attack on his fallback.
This vulnerability does not result on funds being drained but affects the functionality of the contract and its reliability
Foundry
My recommendation is to always avoid external dependencies. Instead of sending the Prize Pool, a withdraw pattern should be implemented. In that way the protocol is quite robust and invulnerable.
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.