The LightChaserV3 bot has found one instance of this vulnerability in the Bridge::getWhiteListedCollections()
view function on L1 (see [Medium-1] Permanent DoS due to non-shrinking array usage in an unbounded loop).
However, it missed a critical instance in Bridge::_whiteListCollection()
internal function, which is called by Bridge::withdrawTokens()
and Bridge::whiteList()
:
If the _collections
state variable becomes too big, the loop will ran out of gas and cause a permanent DoS to Bridge::withdrawTokens()
(and Bridge::whiteList()
), locking the user's tokens.
Permanent DoS and loss of funds.
Either limit the size of the _collections
array, or add a function to remove values from the _collections
array in case it becomes too big.
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.