When facilitating cross-chain transactions from Layer 1 (L1) to Layer 2 (L2), the protocol allows the use of the zero address (0x0) as a valid destination address on L2. This practice poses significant risks and should be disallowed.
Lack of Zero Address Validation in depositTokens()
Asset Loss: Funds or tokens sent to the zero address on L2 may become irretrievable, resulting in permanent loss of assets.
In test/Bridge.t.sol
, add the following code:
The test will pass.
Manual Review
Implement strict address validation in depositTokens()
:
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.