sherlock-audit / 2024-02-optimism-2024-judging

6 stars 4 forks source link

blacklisted disupute game should be checked while proving withdrawals #245

Closed sherlock-admin2 closed 6 months ago

sherlock-admin2 commented 7 months ago

blacklisted disupute game should be checked while proving withdrawals

Low/Info issue submitted by Shield

Summary

blacklisted disupute game should be checked while proving withdrawals

Vulnerability Detail

require(!disputeGameBlacklist[disputeGameProxy] check is not performed in the proveWithdrawalTransaction function which means withdrawal can be proven against already blacklisted dispute game proxy. This is not a major issue since this check is performed during the finalzation. But still think this check can be added in the proveWithdrawalTransaction function as well.

Impact

the check can be done during withdrawls to reject this type of withdrawal before finalisation and thereby making the code more efficient in a way

Code Snippet

https://github.com/sherlock-audit/2024-02-optimism-2024/blob/main/optimism/packages/contracts-bedrock/src/L1/OptimismPortal2.sol#L442

Tool used

Manual Review

Recommendation

add the check in the proxy method instead