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 11 months 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.