The Starklane
contract on L1 does not properly assert the msg.value
when sending messages to L2. This could lead to messages getting stuck in the bridge due to insufficient fees.
In the depositTokens
function, there's no check on the msg.value
when sending a message to L2:
According to the Cairo Book, the msg.value
should be at least 20,000 wei to cover the gas costs of storing the message hash on L1.
Without proper assertion of msg.value
, users might send transactions with insufficient fees, resulting in messages getting stuck in the bridge, then users needing to cancel messages after the 7-day waiting period.
Manual review
Add an assertion to check that msg.value
is within an acceptable range:
Impact: Medium/High. Need an admin to start a cancellation and wait for 5 days once done. DoS > 5 days. Likelyhood: Low. Everytime a wallet/or a user do not send enough gas
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.