_consumeMessageAutoWithdraw
function checks if a message hash is already consumed (WITHDRAW_AUTO_CONSUMED
) and reverts if it is. However, there's no mechanism to prevent an attacker from repeatedly calling this function with the same hash, even if it's not a valid message.Impact: This could lead to a denial-of-service (DoS) attack where legitimate users are unable to withdraw their tokens because the contract is constantly reverting due to an attacker's actions. While this doesn't directly lead to a loss of funds, it disrupts the bridge's functionality and user experience.
Recommendation: Implement a mechanism to prevent or mitigate DoS attacks. This could involve rate limiting, requiring a deposit or fee for message consumption attempts, or using a more sophisticated approach like a challenge-response mechanism.
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.