The setOrganizer function lacks proper access control, allowing any external address to call it and arbitrarily change the contract's organizer. This is a critical security flaw when the organizer has special privileges or controls important logic in the contract.
H:
Reason 1 // Unrestricted Access: Anyone can call the setOrganizer function, potentially replacing the legitimate organizer.
Reason 2 // This could lead to denial of service, misdirection of funds, or abuse of logic tied to the organizer role.
Impact - H:
Impact 1 // Assign themselves as organizer.
Impact 2 // Disrupt normal protocol operations.
Consider using OpenZeppelin's AccessControl for fine-grained permission management.
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.