The contract should be pausable for emergencies, such as discovered bugs or attacks, allowing the owner to halt gameplay and protect funds.
No pausing mechanism exists in the current code, leaving the contract exposed during active incidents.
Likelihood:
Always present while the contract is active.
If an exploit is found, the owner cannot react quickly.
Impact:
Losses can be greater since the contract cannot be stopped.
Owner and players are exposed to ongoing risk.
Explanation:
Without pausing, the contract continues to operate even during emergencies, increasing exposure and potential losses.
Mitigation Explanation:
Integrate OpenZeppelin’s Pausable
and apply whenNotPaused
to user-accessible functions. This enables the owner to halt operations rapidly if needed.
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.