The _distribute function does not verify valid winner addresses, potentially leading to funds being sent to the null address.
A user might submit a faulty 0 address by mistake or the organizer might call the deployProxyAndDistribute function with a faulty zero address for a winner. When the _distribute is called, it sends funds to the winner's address https://github.com/Cyfrin/2023-08-sparkn/blob/0f139b2dc53905700dd29a01451b330f829653e9/src/Distributor.sol#L147. But nowhere in the function, does the function checks for the validity of the winner's addresses.
This might incure loss of funds for the winner.
Manual review
Change the following code : https://github.com/Cyfrin/2023-08-sparkn/blob/0f139b2dc53905700dd29a01451b330f829653e9/src/Distributor.sol#L145-L150
To :
That way, the funds will not be lost and the winner can be contacted to change his address.
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.