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

The contract can be blocked if the winner cannot receive ether.

Summary

The contract can be blocked if the winner cannot receive ether.

Vulnerability Details

In the fulfillRandomWords() function ether is sent to the winner by the send function. However, this function may be reverted if the receiver is a contract that has revert in the fallback() or receive() function. In that case VRF Coordinator will not perform a second rawFulfillRandomWords and contract functionality will be blocked.

Impact

High.

Tools Used

VSCode.

Recommendations

Consider change to "Withdrawal" pattern

Updates

Lead Judging Commences

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

Winner can be a contract that refuses ETH and brinks the whole contract + reverts on Chainlink VRF

Support

FAQs

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