Beginner FriendlyFoundry
100 EXP
View results
Submission Details
Severity: high
Valid

`ScoreBoard::setPrediction(address,uint256,ScoreBoard.Result)` uses timestamp for comparisons which can be manipulated by attackers.

Summary

Dangerous usage of block.timestamp. block.timestamp can be manipulated by miners.

Vulnerability Details

- block.timestamp <= START_TIME + matchNumber * 68400 - 68400 (src/ScoreBoard.sol#66)

Impact

An attacker can manipulate the contract via block.timestamp.

Tools Used

Slither

Recommendations

Avoid relying on block.timestamp and consider using an oracle for time-sensitive operations.

Updates

Lead Judging Commences

NightHawK Lead Judge over 1 year ago
Submission Judgement Published
Validated
Assigned finding tags:

setPrediction lacks access control

setPrediction has no access control and allows manipulation to Players' predictions.

Support

FAQs

Can't find an answer? Chat with us on Discord, Twitter or Linkedin.

Give us feedback!