L1BossBridge::withdrawTokensToL1 and L1BossBridge::sendToL1 do not check whether the signature is used or not.
Any user with a valid signature can repeatedly use it to withdraw funds from the Bridge. L1BossBridge does not check if the signature has been used previously. This could lead to funds being stolen from the Bridge.
The following test case demonstrates the impact. Any user with a valid signature can use it indefinitely to withdraw funds from the bridge.
Test Case Steps:
Step 1. An attacker deposits some funds into the bridge and obtains a signature.
Step 2. The attacker indefinitely uses the signature issued by the operator to withdraw funds.
POC
Foundry
Issue signatures with a nonce and block the usage of already used signatures.
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.