Flow

Sablier
FoundryDeFi
20,000 USDC
View results
Submission Details
Severity: medium
Invalid

restarting a flow stream can DOS pausing functionality

Summary

A flow stream should be able to be paused at any time by the stream sender, however due to insufficient validation in restarting a stream, if a stream is restarted with an rps of 0, it can never be paused again.

Vulnerability Details

pausing a stream requires that it not be paused in the first place here

function pause(uint256 streamId)
external
override
noDelegateCall
notNull(streamId)
notPaused(streamId)

This redundant check is the reason if a stream is restarted with an rps of 0, it can never be paused

Impact

sender will be unable to pause a stream once it is restarted.

Tools Used

manual review

Recommendations

Add input validation for stream restarting or remove NotPaused() modifier because pausing a stream that is already paused should not be an issue as long as it is just adjusting the rps to 0.

Updates

Lead Judging Commences

inallhonesty Lead Judge
12 months ago
inallhonesty Lead Judge 12 months ago
Submission Judgement Published
Invalidated
Reason: Incorrect statement

Support

FAQs

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