Description: Calling 'buySnow()' sets 's_earnTimer', which is used to restrict 'earnSnow()'.
Impact: Any user who buys Snow resets the earn timer for the entire system, blocking legitimate use.
Proof of Concept: Include the following test in the TestSnow.t.sol
file:
Recommended Mitigation: Remove 's_earnTimer' entirely from 'buySnow()':
When buySnow is successfully called, the global timer is reset. This inadvertently affects the earning of snow as that particular action also depends on the global timer.
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.