The SablierFlow contract lacks validation to ensure that a streamId exists before allowing deposits. This can lead to deposits being made to non-existent streams, resulting in lost funds.
The vulnerability arises from the absence of a check to verify the existence of a streamId in the _streams mapping before allowing deposits. This allows deposits to be made to streams that have not been initialized.
Deposits to non-existent streams result in funds being locked in the contract without any means of recovery.
Manual review
Add a validation check in the _deposit function to ensure that the streamId exists before proceeding with the deposit.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.