Batch root contraffatto svuota l'escrow Ethereum di zkLink Nova fino a 0,001 ETH
Punti chiave
- •Un attaccante ha utilizzato un relayer pubblico per iniettare un batch root contraffatto su Ethereum, autorizzando prelievi non autorizzati in ETH e token ERC-20 dall'escrow Layer 1 di zkLink Nova.
- •La società di sicurezza Blockaid ha stimato che fossero stati sottratti circa 786.000 dollari e ha avvertito che l'attacco era ancora in corso quando ha divulgato l'incidente alle 22:24 ET del 28 ottobre.
- •La singola transazione più grande, eseguita alle 18:21 ET, ha spostato 22,43 ETH e 11 token ERC-20 del valore di 778.625,84 dollari, inclusi 245,74 pufETH, verso un unico indirizzo destinatario.
- •A fine giornata del 28 ottobre, l'escrow conteneva solo circa 0,001 ETH e il flag di pausa non era stato impostato, lasciando incerto il totale finale delle perdite.
- •L'exploit è stato il secondo in 11 giorni a coinvolgere input di bridge falsificati, dopo la creazione il 17 ottobre di 10 milioni di token CYS non autorizzati attraverso il bridge cross-chain di Cysic.

Un attaccante ha svuotato l'escrow Ethereum di zkLink Nova fino a circa 0,001 ETH mercoledì 28 ottobre, utilizzando un relayer pubblico per inviare un batch root contraffatto alla rete. Blockaid, società di sicurezza blockchain che ha segnalato l'exploit, stima che finora siano stati sottratti circa 786.000 dollari in ETH e token ERC-20 e ha avvertito che l'attacco era ancora in corso al momento del rapporto.
Blockaid ha segnalato l'attacco tramite relayer pubblico alle 22:24 ET
Blockaid ha divulgato l'incidente in un post su X alle 22:24 ET del 28 ottobre. Secondo la società, l'attaccante ha utilizzato un relayer pubblico per iniettare un root falso su Ethereum e poi ha finalizzato prelievi in ETH e token ERC-20 dall'escrow Layer 1 di Nova verso indirizzi destinatari di loro scelta.
"~$786k drained from L1 ETH escrow and ERC20 bridge so far. Attack still ongoing", ha scritto Blockaid.
zkLink Nova raccoglie asset da Ethereum e dalle sue reti Layer 2 collegate e li raggruppa. I depositi rimangono nei contratti sulle catene di origine e vengono accreditati su Nova attraverso il suo canonical bridge. Un batch root è il valore hash utilizzato da un bridge per verificare i messaggi; in questo caso, i prelievi approvati da Nova. Secondo il design di settlement di zkLink, i batch devono superare i controlli di prova e i controlli di coerenza cross-chain prima di poter essere finalizzati, e i prelievi possono procedere solo dopo che il batch root è stato registrato sulle catene collegate. Tale architettura colloca gli asset raggruppati da più catene dietro un unico passaggio di verifica, il che significa che un solo root validato in modo errato può autorizzare prelievi contro l'intero saldo dell'escrow anziché un singolo account.
Blockaid ha dichiarato che il root contraffatto è stato invece iniettato su Ethereum tramite un relayer pubblico. I log delle transazioni dell'attacco mostrano un nuovo batch root registrato nella stessa transazione dei prelievi in ETH e token, immediatamente prima di essi.
Una singola transazione alle 18:21 ha spostato 778.625,84 dollari verso un unico destinatario
La transazione più grande si è svolta il 28 ottobre alle 18:21 ET, poche ore prima dell'allerta di Blockaid. Ha rimosso 22,43 ETH dall'escrow Ethereum di Nova insieme a 11 token ERC-20 dal token bridge, inviando tutto a un unico indirizzo. Il thread di Blockaid ha indicato due indirizzi utilizzati dall'hacker e ha identificato l'ERC-20 bridge come secondo contratto bersaglio.
Il lotto più grande è stato di 245,74 pufETH, del valore di circa 613.536 dollari ai prezzi di Etherscan. Con esso sono usciti circa 18.113 USDC e 3.361 USDT. Ai prezzi mostrati da Etherscan, i trasferimenti ammontano a 778.625,84 dollari, ma poiché la cifra copre solo una transazione, le perdite totali sono difficili da stabilire.
Etherscan ha successivamente mostrato che nell'escrow ETH violato erano rimasti solo circa 0,001 ETH. Alle 22:29 ET, tuttavia, il flag di pausa dell'escrow non era ancora stato impostato, lasciando incerto se altri controlli avessero interrotto ulteriori prelievi. I punti ancora aperti al momento della stesura erano se il flag di pausa sarebbe stato attivato e quale sarebbe stato il totale finale delle perdite una volta conteggiate tutte le transazioni interessate.
Input contraffati colpiscono un altro bridge 11 giorni prima
L'incidente zkLink è stato il secondo in 11 giorni a coinvolgere input di bridge falsificati. Il 17 ottobre, come riportato da Cryptopolitan, un falso messaggio di mint è stato utilizzato per creare 10 milioni di token CYS non autorizzati attraverso il bridge cross-chain di Cysic. L'attaccante di Cysic ha venduto 7,2 milioni dei token, e il loro wallet ha inviato circa 727.000 dollari a Ethereum prima che il progetto lo inserisse nella blacklist.
Separatamente, circa 7,54 milioni di dollari sono usciti dal Verus Ethereum bridge a luglio, la seconda volta che il bridge perdeva fondi. A maggio, 11,58 milioni di dollari erano stati sottratti nel primo incidente. Blockaid ha collegato i due attacchi Verus allo stesso contratto e allo stesso percorso di importazione. L'exploit di maggio derivava da circa 10 righe di validazione Solidity mancanti nella funzione checkCCEValues del bridge, la stessa classe di errore di validazione alla base degli attacchi Wormhole e Nomad del 2022 — violazioni che quell'anno drenarono complessivamente centinaia di milioni di dollari. Il recente gruppo di incidenti basati su falsi messaggi di mint, batch root contraffatti e controlli di validazione mancanti illustra quanto valore cross-chain aggregato possa dipendere dal codice di verifica di un bridge.