Normally, the grace period should remain constant during an active game round to ensure fair gameplay and predictable reward timing.
The contract allows the owner to modify gracePeriod
mid-game via updateGracePeriod()
, enabling potential manipulation of game outcomes.
Likelihood: Medium
Requires owner privilege but no technical barriers
Could be exploited:
To prematurely end games when favorable to owner
To artificially extend games when owner is current king
Impact: High
Fairness Violation: Undermines game's trustless nature
Economic Manipulation: Allows owner to influence prize distribution
Reputation Damage: Erodes player trust in contract immutability
Key Exploit Steps:
Player legitimately claims throne (expects full grace period)
Owner waits until near period end
Owner reduces grace period to minimal duration
Owner immediately declares victory before players can react
Option 1: Lock During Active Game (Recommended)
Locks grace period during active games (!gameEnded
)
Only allows changes between rounds
Maintains all other safety checks
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.