THe current withdraw function has serverial issues.
uses unsafe transfer() instead of call()
missing zero addres check ( maybe cause already known issue between owners/organiezer)
not emmitting the required FundsWIthdrawn event from interface ( that for sure an error)
only owner instead of organizer (maybe that should be the case but seems inconsinsent with documentation)
Likelihood:
Reason 1: .transfer() can fail with contracts due to 2300 gas limit
Reason 2: No validation checks could lead to user error by trusted roles
Impact:
Impact 1: Funds could be permanently lost if sent to zero address
Informational. This protocol doesn't rely on events to function, they are just nice to have, but not mandatory.
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.