Description: Since the enum GameState:Created
is 0, if a game is not created, when reading the state of the game,
it will return 0, same as GameState:Created
. This cause game.state == GameState.Created
to return true on any non-existing game.
Impact: canTimeoutJoin
will return incorrect information, which can lead to misleading decisions by users or other contracts.
Proof of Concept: add the following test and run it
Recommended Mitigation:
add a game state None at the beginning of the enum
Code suggestions or observations that do not pose a direct security risk.
Code suggestions or observations that do not pose a direct security risk.
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.