The _update
function lacks a check to ensure that the to
address (the recipient address for a stream transfer) is not set to the zero address (address(0)
). Although the update
function comment suggests that transfers to the zero address are prohibited to prevent accidental burns, there is no corresponding validation for the to
address. This could allow streams to be transferred to address(0), resulting in asset loss or locked funds.
The _update
function is intended to facilitate updates to the stream, including transfers, is responsible for initializing a new stream.
The update
function comments specifies that “Transfers to the zero address are not allowed, preventing accidental burns.” However, while a check is implemented for from
address, there is no similar check for to
address. The omission of to != address(0)
allows the possibility of transferring streams to the zero address, contrary to the intended behavior specified in the update
function comment.
Allowing transfers to the zero address can result in the loss of funds, as no one would be able to access or reclaim streams sent there. This could lead to user asset loss and decreased trust in the protocol, especially if the protocol processes a significant number of transfers to zero address.
Manual Review
Add a validation check to ensure that the recipient address (to
) is not set to address(0)
.
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.