Rock Paper Scissors

First Flight #38
Beginner FriendlySolidity
100 EXP
View results
Submission Details
Severity: high
Invalid

Reentrancy Risk in ETH Prize Distribution

Reentrancy Risk in ETH Prize Distribution

Summary

External ETH transfers in internal functions (_finishGame, _handleTie, _cancelGame) are vulnerable to reentrancy attacks.

Vulnerability Details

Location: ETH transfers via .call{value:}()

Issue:

State changes occur after external calls

Attackers could re-enter via malicious fallback functions

Impact

  • Potential theft of locked ETH prizes

  • Could manipulate game outcomes during reentry

Tools Used

Manual review

Recommendations

  • Use pull-over-push pattern for withdrawals

  • Implement OpenZeppelin’s ReentrancyGuard

Updates

Appeal created

m3dython Lead Judge 2 months ago
Submission Judgement Published
Invalidated
Reason: Incorrect statement
m3dython Lead Judge 2 months ago
Submission Judgement Published
Invalidated
Reason: Incorrect statement

Support

FAQs

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