According to Sablier they want to give a 7 days window to the campaign creator to clawback their funds in case some of the details of the campaign is not correct (invalid merkle root, invalid recipient details etc.)
The problem campaigns can be created using any amount of days, including <= 7.
Above we can see that the admin will skip the expiration process whenever he uses a shorter campaign that lasts less than the grace period defined.
Add the following code on v2-periphery -> test -> integration -> merkle-lockup -> lt -> clawback -> clawback.t.sol
Admins can create campaigns that will lead users to think that they will be eligible to claim their assets, but they will be eventually rugged by the admin.
Probability and impact: High. As Sablier is a product that covers different kind of token allocation/distribution, there will be many cases that will fit the scenario above.
Manual Review & Foundry
There are different options:
Redefine the delay for the grace period when campaigns with shorter days are created.
Add a minimum value for creating campaigns. i.e: minimum 7 days.
Check for the percentage of the time passed after the first claim. i.e: grace period is 5% of the campaign's time after the first claim.
https://www.codehawks.com/contests/clvb9njmy00012dqjyaavpl44
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.