The contract is intended to maintain strong administration by only permitting privileged roles, such as Organizer, to control sensitive functions.
However, there is no check preventing privileged roles from being set to the zero address. Assigning zero addresses can disable critical protocol functions or result in permanent fund loss, bricking contract functionality.
Likelihood:
A mistake, such as a typo or copy-paste error, frequently results in a zero address being submitted during role or destination changes.
The lack of validation means any call with a zero address will leave the contract in an irrecoverable or dangerous state.
Impact:
Assigning the zero address to a privileged role disables all functions that require that role and may prevent administrative recovery.
Sending contract funds to the zero address through an unchecked withdrawal permanently destroys ETH/Tokens.
Owner/admin is trusted / Zero address check - Informational
Owner/admin is trusted / Zero address check - Informational
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.