The code expects a boolean return value when calling the approve()
function. However, USDT's implementation of the approve() function does not return a boolean value, which causes the contract to revert during execution.
This piece of code is also affected https://github.com/Cyfrin/2024-10-zksync/blob/main/era-contracts/l1-contracts/contracts/bridge/L1ERC20Bridge.sol#L207
USDT will revert if an attempt to bridge it is made.
Manual
Use SafeApprove instead
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.