Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MohammadX2049 - Stuck Funds in StreamEscrow Due to Lack of Periodic forwardAll() Calls #180

Open
sherlock-admin4 opened this issue Nov 30, 2024 · 0 comments

Comments

@sherlock-admin4
Copy link

sherlock-admin4 commented Nov 30, 2024

MohammadX2049

Medium

Stuck Funds in StreamEscrow Due to Lack of Periodic forwardAll() Calls

Summary

The forwardAll() function in the StreamEscrow contract does not adhere to its documented behavior, which states that it forwards all pending ETH streams if at least minimumTickDuration seconds have passed since the last forward. Instead, it only forwards ETH streams for the same day, not all pending streams. Also If this function is not called regularly each day, the accumulated ETH remains in the contract. The contract lacks an internal mechanism to automatically trigger this function, relying solely on external calls.

Root Cause

In the StreamEscrow contract, the forwardAll() function is documented to forward all pending ETH streams if at least minimumTickDuration seconds have passed since the last forward.

https://github.com/sherlock-audit/2024-11-nounsdao/blob/main/nouns-monorepo/packages/nouns-contracts/contracts/StreamEscrow.sol?plain=1#L132-L149

However, the implementation only forwards ETH streams for the same day, not all pending streams. This discrepancy arises from the line:

https://github.com/sherlock-audit/2024-11-nounsdao/blob/main/nouns-monorepo/packages/nouns-contracts/contracts/StreamEscrow.sol?plain=1#L144

If this function is not called regularly, the accumulated ETH remains in the contract. The contract lacks an internal mechanism to automatically trigger this function, relying solely on external calls.

Internal pre-conditions

No response

External pre-conditions

No response

Attack Path

No response

Impact

No response

PoC

No response

Mitigation

No response

@sherlock-admin4 sherlock-admin4 changed the title Jolly Honey Cuckoo - Stuck Funds in StreamEscrow Due to Lack of Periodic forwardAll() Calls MohammadX2049 - Stuck Funds in StreamEscrow Due to Lack of Periodic forwardAll() Calls Dec 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant