Missing non-reentrant modifier in handleOutgoingRESDL and withdraw function
A potential reentrancy attack can be executed in these functions due to the sdlToken.safeTransfer external call made
This can cause unauthorized withdrawal in withdraw function
VS Code
A modifier of the form below can mitigate the issue:
bool private locked;
modifier nonReentrant() {
require(!locked, "ReentrancyGuard: reentrant call");
locked = true;
_;
locked = false;
}
// Example usage in a function
function myFunction() external nonReentrant {
// ... (state changes)
externalContract.someFunction(); // External call after state changes
// ...
}
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.