Normal flow requires every deposit/withdraw to pass through the customized deposit()/withdraw() in order to collect fees and enforce time + winner checks.
Only deposit(uint256,address) overrides ERC4626; mint, withdraw(uint256,address,address), and redeem remain callable and skip all protections.
Likelihood:
Any user or integration that knows ERC4626 will invoke the standard interface during the betting period.
The contract exposes these functions publicly with no modifiers, so every address can call them immediately.
Impact:
Attackers can bypass participation fees or join after the deadline, undermining the tournament rules.
Losing participants can withdraw before the winner is set (or even after losing), draining the prize pool.
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.