As per the documentation: "Emergency actions have 1-day delay". Indeed, we can find the following constant variable declaration in the TimelockController contract but it is never used:
The emergency procedure consists of 2 functions:
The problem arises because there is no timelock feature in the emergency withdrawal process. One can call scheduleEmergencyAction
and directly call executeEmergencyAction
right after, and it will succeed.
The impact of this issue is medium, given that there is no timelock for the emergency procedure while it should be present as specified in the documentation.
Manual review.
Make sure to add a timelock mechanism for the emergency withdrawal process.
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.