dealine_set in the Fund struct is used for the set_deadline() in order for the creator to not be able reset the deadline. However, this variable is never set to true anywhere in the code.
Note that there is a typo in dealine_set. It should be deadline_set. This is however not a inherent problem with the code logic as it is written the same way everywhere in the code.
set_deadline() reverts if dealine_set == true. However, it is never set to true after fund.deadline gets a value. This allows the creator to call the function as he wishes and change the deadline.
Add the following test "Sets a second deadline" after the "Sets a deadline" test provided by the devs:
Normally it should revert, but in passes with the vulnerability present in the code:
Undermines contributors trust as the creator can always delay the project.
Manual review, anchor tests
Set dealine_set == true once the deadline is set.
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.