ActualitésCryptoUne fausse racine de lot vide l'escrow Ethereum de zkLink Nova, réduite à 0,001 ETH

Une fausse racine de lot vide l'escrow Ethereum de zkLink Nova, réduite à 0,001 ETH

Auteur: Cryptopolitan·

Points clés

  • •Un attaquant a utilisé un relais public pour injecter une fausse racine de lot sur Ethereum, autorisant des retraits non autorisés d'ETH et de jetons ERC-20 depuis l'escrow de couche 1 de zkLink Nova.
  • •La société de sécurité Blockaid a estimé qu'environ 786 000 $ avaient été dérobés et a averti que l'attaque était toujours en cours lors de sa divulgation à 22 h 24 HE le 28 octobre.
  • •La plus grande transaction, exécutée à 18 h 21 HE, a transféré 22,43 ETH et 11 jetons ERC-20 d'une valeur de 778 625,84 $, dont 245,74 pufETH, vers une seule adresse destinataire.
  • •Fin de journée le 28 octobre, l'escrow ne détenait plus qu'environ 0,001 ETH, et son drapeau de pause n'était pas activé, laissant le montant final des pertes incertain.
  • •Cet exploit était le deuxième en 11 jours impliquant des entrées de pont falsifiées, après la création de 10 millions de jetons CYS non autorisés via le pont inter-chaînes de Cysic le 17 octobre.
Une fausse racine de lot vide l'escrow Ethereum de zkLink Nova, réduite à 0,001 ETH

Un attaquant a vidé l'escrow Ethereum de zkLink Nova jusqu'à environ 0,001 ETH le mercredi 28 octobre, en utilisant un relais public pour soumettre une fausse racine de lot au réseau. Blockaid, la société de sécurité blockchain qui a signalé l'exploit, estime qu'environ 786 000 $ en ETH et jetons ERC-20 ont été dérobés à ce jour et a averti que l'attaque était toujours en cours au moment de son signalement.

Blockaid a signalé l'attaque via un relais public à 22 h 24 HE

Blockaid a divulgué l'incident dans une publication sur X à 22 h 24 HE le 28 octobre. Selon la société, l'attaquant a utilisé un relais public pour injecter une fausse racine sur Ethereum, puis a finalisé des retraits d'ETH et de jetons ERC-20 depuis l'escrow de couche 1 de Nova vers des adresses destinataires de son choix.

« ~786 k$ drainés de l'escrow ETH L1 et du pont ERC20 jusqu'à présent. L'attaque est toujours en cours », a écrit Blockaid.

zkLink Nova reçoit des actifs d'Ethereum et de ses réseaux de couche 2 connectés et les met en commun. Les dépôts restent dans des contrats sur leurs chaînes d'origine et sont crédités sur Nova via son pont canonique. Une racine de lot est la valeur de hachage qu'un pont utilise pour vérifier les messages ; en l'occurrence, les retraits approuvés par Nova. Selon la conception de règlement de zkLink, les lots doivent passer des vérifications de preuve et des contrôles de cohérence inter-chaînes avant de pouvoir être finalisés, et les retraits ne peuvent être effectués qu'après que la racine de lot soit validée sur les chaînes connectées. Cette architecture place les actifs mis en commun de plusieurs chaînes derrière une seule étape de vérification, ce qui signifie qu'une racine incorrectement validée peut autoriser des retraits sur l'intégralité du solde de l'escrow plutôt que sur un compte individuel.

Blockaid a indiqué que la racine falsifiée a été injectée sur Ethereum via un relais public. Les journaux de transaction de l'attaque montrent qu'une nouvelle racine de lot a été enregistrée dans la même transaction que les retraits d'ETH et de jetons, juste avant eux.

Une seule transaction à 18 h 21 a transféré 778 625,84 $ vers un seul destinataire

La plus grande transaction a eu lieu le 28 octobre à 18 h 21 HE, quelques heures avant l'alerte de Blockaid. Elle a retiré 22,43 ETH de l'escrow Ethereum de Nova ainsi que 11 jetons ERC-20 du pont de jetons, et a tout envoyé vers une seule adresse. Le fil de Blockaid a nommé deux adresses utilisées par le pirate et identifié le pont ERC-20 comme un second contrat cible.

Le plus gros lot était de 245,74 pufETH, d'une valeur d'environ 613 536 $ aux prix affichés par Etherscan. Environ 18 113 USDC et 3 361 USDT sont partis avec. Aux prix affichés par Etherscan, les transferts totalisent 778 625,84 $, mais comme ce chiffre ne couvre qu'une seule transaction, le montant total des pertes est difficile à établir.

Etherscan a ensuite montré qu'il ne restait qu'environ 0,001 ETH dans l'escrow ETH piraté. Cependant, à 22 h 29 HE, le drapeau de pause de l'escrow n'avait toujours pas été activé, laissant dans l'incertitude quant à savoir si d'autres contrôles avaient interrompu d'éventuels retraits supplémentaires. Les questions en suspens au moment de la rédaction étaient de savoir si le drapeau de pause serait activé et quel serait le montant final des pertes une fois toutes les transactions concernées comptabilisées.

Des entrées falsifiées ont touché un autre pont 11 jours plus tôt

L'incident zkLink était la deuxième exploitation en 11 jours impliquant des entrées de pont falsifiées. Le 17 octobre, comme l'a rapporté Cryptopolitan, un faux message de frappe a été utilisé pour créer 10 millions de jetons CYS non autorisés via le pont inter-chaînes de Cysic. L'attaquant de Cysic a vendu 7,2 millions de ces jetons, et son portefeuille a envoyé environ 727 000 $ vers Ethereum avant que le projet ne le place sur liste noire.

Par ailleurs, environ 7,54 millions $ ont quitté le pont Ethereum de Verus en juillet, la deuxième fois que ce pont perdait des fonds. En mai, 11,58 millions $ avaient été dérobés lors du premier incident. Blockaid a lié les deux attaques contre Verus au même contrat et à la même voie d'importation. L'exploit de mai provenait d'environ 10 lignes de validation Solidity manquantes dans la fonction checkCCEValues du pont, le même type d'erreur de validation à l'origine des attaques Wormhole et Nomad en 2022 — des intrusions qui avaient drainé des centaines de millions de dollars cette année-là. Cette récente série d'incidents, fondée sur de faux messages de frappe, des racines de lot falsifiées et des vérifications de validation manquantes, illustre à quel point la valeur inter-chaînes mise en commun peut dépendre du code de vérification d'un pont.