connext / monorepo

Connext is a modular stack for trust-minimized, generalized communication between blockchains.

Home Page:https://docs.connext.network

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[ICE: 10] ChainID check have not happened before the tx init.

oswy-cpu opened this issue · comments

commented

Describe the bug
The user tried to initiate transaction from Linea without changing chain in his wallet manually. The website have not passed chainID checks and allowed user to send transaction with the current chain (Blast). This resulted in the user sending funds to the Linea contract address on the blast network (i.e. loss of funds)

Where did the user initiate this transfer?
Connext UI

Link to ticket in discord
https://app.intercom.com/a/inbox/qge2vd8z/inbox/shared/unassigned/conversation/1110?view=List

Screenshots
image

Additional context
User Address: 0x9ca8fbe5594209aef565502ce2162a2f7ff68fc8
Linea contract: https://lineascan.build/address/0xce157927222cd68b9c7057e84344ce6f0cee89b2
Funds fell to: https://blastscan.io/address/0xce157927222cd68b9c7057e84344ce6f0cee89b2

@oncall

commented

upd, happens only with Rabby Wallet
image

We need to check wallet state sync - the "Send" button should instead be a "Switch chain" prompt.

This may be a rabby wallet connect issue, wrong chain logic is fairly simple. source_chain_data?.chain_id is defined as linea, so wallet_chain_id or what's coming back from Wallet Connect is that it's Linea but it isn't.

const wrong_chain =
source_chain_data &&
wallet_chain_id !== source_chain_data.chain_id &&
!xcallData

This doesn't happen only for Rabby. Here's a case where it happens on mobile OKX Wallet:
https://app.intercom.com/a/inbox/qge2vd8z/inbox/shared/all/conversation/1115?view=List
image
image
image

The user is completely unable to get a transaction started from Ethereum

Fix merged to main already.