Exploit de collision d'ID de marché sur Injective
Un attaquant a abusé des marchés d'options binaires sans permission d'Injective et d'une collision d'ID de marché pour dérober environ 4,9 millions de dollars avant l'arrêt de la chaîne.
- Date
- Victime
- Injective
- Statut
- Fonds dérobés
Le 31 août 2026, la blockchain de couche 1 Injective a été exploitée lorsqu'un attaquant a abusé de sa création de marchés d'options binaires sans permission et d'une faille dans la manière dont le protocole génère les identifiants de marché, dérobant environ 4,9 millions de dollars. La chaîne s'est arrêtée pendant environ trois heures et 42 minutes pour enrayer l'attaque ; les fonds dérobés ont été transférés vers Ethereum, où environ 1 980 ETH (~4,88 millions de dollars) ont été regroupés dans une seule adresse.
Ce qui s'est passé
Injective construisait l'identifiant de chaque marché en concaténant des paramètres d'oracle — type, ticker, dénomination de cotation, symbole et fournisseur — sans séparateurs ni préfixes de longueur. Cela a permis à l'attaquant de provoquer une collision entre un fonds d'assurance libellé en INJ et un marché d'options binaires libellé en USDC. Sur environ 19 heures, l'attaquant a créé 299 marchés d'options binaires instantanés, chacun relié à un oracle sous son contrôle configuré pour ne jamais fournir de prix et avec des horodatages d'expiration et de règlement espacés de quelques secondes. Au moyen de transactions auto-appariées sur plusieurs sous-comptes, l'attaquant a déclenché la voie de « remboursement sans prix », qui tentait de couvrir les déficits en USDC à l'aide des soldes en INJ et traitait des avoirs minimes en INJ comme une couverture suffisante pour des déficits libellés en dollars. Dans un cycle documenté, environ 105 000 USDC de dépôts ont généré des retraits supérieurs à 204 000 USDC, soit un doublement de la mise à chaque itération.
Conséquences
Les validateurs d'Injective ont arrêté la chaîne du bloc 181 027 006 (16:10 UTC) au bloc 181 027 007 (19:52 UTC), avançant d'exactement un bloc à travers la jointure afin que les transactions exécutées soient préservées plutôt qu'annulées. Injective a affirmé que le consensus, l'INJ natif et les fonds en staking n'avaient jamais été compromis et a présenté la pause comme une mise à niveau. Au moment de la publication, le protocole n'avait publié aucune déclaration de remédiation et les quelque 1 980 ETH demeuraient immobiles dans l'adresse de l'attaquant, si bien que le statut est ici stolen. Des commentateurs ont noté que l'attaquant avait rétro-conçu la faille à partir de la documentation publique du SDK, d'anciens binaires compilés et du testnet en direct, alors même qu'Injective avait retiré ses dépôts principaux de GitHub.
Pourquoi c'est important
Comme l'exploit de Maya Protocol survenu plus tôt en août, cette attaque résidait non pas dans un seul contrat de prêt mais dans la logique de règlement et de comptabilité propre à une chaîne spécifique à une application, où une seule hypothèse erronée — ici, qu'un identifiant de marché est unique — se propage en valeur fabriquée. La création de marchés sans permission, combinée à une voie de remboursement qui confondait la comptabilité INJ et USDC, a transformé un raccourci de nommage en une planche à billets. L'épisode rappelle que la construction des identifiants, le listing sans permission et le règlement entre dénominations sont tout aussi critiques pour la sécurité que n'importe quelle fonction de swap, et que la « sécurité par l'obscurité » — cacher le code source — ne peut pas grand-chose face à un attaquant déterminé.
Sources & preuves on-chain
- [01]mpost.iohttps://mpost.io/injective-exploited-for-4-9m-via-market-id-collision-in-binary-options-settlement-logic/
- [02]coinpaprika.comhttps://coinpaprika.com/news/injective-froze-four-hours-stop-49m-exploit/
- [03]coinmarketcap.comhttps://coinmarketcap.com/top-stories/6a973de4f2b8186f115c0ca0/