Auteur : Gu Yu, ChainCatcher
Ces derniers jours, l'écosystème Cosmos a vécu une "catastrophe de sécurité" qui aurait pu être évitée. Des blockchains comme MANTRA, TAC, KiiChain, Nesa et d'autres utilisant le module EVM de Cosmos ont été attaquées l'une après l'autre. Les jetons de réserve des protocoles, détenus dans les portefeuilles des caisses de ces chaînes, ont été volés en masse par des pirates et rapidement vendus, provoquant une chute de plus de 90% en quelques heures pour les jetons KII, TAC, NES, et infligeant des pertes considérables à de nombreux détenteurs.
Au départ, le marché n'avait pas remarqué le facteur commun derrière cette série d'incidents — toutes étant des blockchains de l'écosystème Cosmos —, les attaques de pirates étant devenues monnaie courante dans le secteur crypto. Mais ce n'est qu'hier que le marché a pris conscience que cette série d'incidents provenait tous du code de mise à jour de la version v0.7.2 publié par Cosmos Labs sur Github le 19 août.

Cosmos Labs a écrit sur cette page GitHub : "Cette version contient des corrections de sécurité importantes. Nous recommandons à toutes les chaînes de mettre à jour vers cette version corrective dès que possible en utilisant une méthode de mise à jour coordonnée. Cette publication a un caractère perturbateur." L'urgence exprimée dans ces termes reflète la gravité de la vulnérabilité.
Cependant, l'opération de Cosmos Labs est déconcertante : ils ont rendu le correctif de sécurité totalement public, mais n'ont pas simultanément envoyé d'alerte privée ou de notification de mise à jour obligatoire aux équipes des projets dépendant de ce module. C'était équivalent à accrocher la clé d'un coffre-fort sur une place publique avec l'inscription "À prendre de toute urgence", donnant ainsi aux personnes mal intentionnées tout le temps nécessaire pour étudier et mettre en œuvre l'attaque.
"Si les attaquants peuvent lire GitHub, les équipes en aval ont besoin de mieux que GitHub. Les vulnérabilités arriveront toujours. L'infrastructure d'entreprise est jugée sur tout ce qui se passe après la découverte d'une vulnérabilité : qui est exposé, qui est averti, qui reçoit le correctif, et si ce sont les clients ou les attaquants qui agissent en premier. Nous avons besoin du rapport complet d'analyse post-mortem de Cosmos Labs. Mais là, il n'y a pas de fioriture possible : l'échec de coordination est grave.", a déclaré le développeur @justde.
KiiChain, également victime de l'attaque, a publié un message critiquant directement l'irresponsabilité de Cosmos Labs, affirmant que cet incident "aurait pu être évité".
KiiChain a expliqué que lorsque Cosmos Labs a publié l'annonce vendredi, ils ont regroupé le correctif avec un lot de problèmes antérieurs non liés qui avaient été traités en privé. À ce moment-là, cela n'a pas été présenté comme une question d'extrême urgence, comme aurait dû l'être une vulnérabilité critique pouvant entraîner une perte permanente de fonds. Ils n'ont pas non plus recommandé de suspendre toutes les chaînes.
KiiChain a également détaillé le principe d'attaque de cette vulnérabilité. L'attaque nécessitait la combinaison simultanée de trois défauts en amont dans le module EVM de Cosmos pour fonctionner : un dépassement inférieur lors de la réécriture du solde après une délégation dans la précompilation de staking, ainsi que deux autres vulnérabilités non encore divulguées publiquement. Le code spécifique de KiiChain n'a pas participé à cette attaque. Toutes les chaînes Cosmos EVM ayant activé les comptes de vesting présentaient le même risque.
Plus tragique encore, ce type d'attaque s'est poursuivi jusqu'au soir du 24, l'équipe du projet Nesa ayant immédiatement publié une annonce et pris des mesures pour suspendre la blockchain. "Nous avons détecté une activité malveillante exploitant la vulnérabilité du module EVM de Cosmos sur la L1 et nous prenons actuellement des mesures pour en contenir l'impact. Nous avons agi rapidement et rétablirons le service une fois le correctif logiciel appliqué et des mesures correctives supplémentaires mises en place pour garantir un fonctionnement sécurisé."

À ce moment-là, le jeton Nesa avait déjà chuté de plus de 94 %, passant de 0,22 dollar à 0,011 dollar. Très peu de projets peuvent retrouver un fonctionnement normal après une telle chute.
Cependant, le fait que l'équipe de ce projet n'ait pas pris de mesures proactives pour atténuer les risques, alors que plusieurs incidents de sécurité liés à l'EVM de Cosmos s'étaient produits et que le problème était exposé depuis au moins 2 jours, démontre toujours une grave insuffisance en termes de conscience des risques et des responsabilités de la part de son équipe technique.
Dès le 21, MANTRA avait publiquement déclaré avoir identifié la cause fondamentale de l'incident, limitée au module EVM de Cosmos sur MANTRA Chain.

À mesure que les discussions se multipliaient, la réponse publique de Cosmos Labs est arrivée tardivement : "Un incident de sécurité en cours affecte les utilisateurs du module EVM de Cosmos. Les équipes de sécurité et d'ingénierie de Cosmos Labs ont pris l'initiative de gérer cet incident. Nous avons recommandé aux chaînes Cosmos EVM qui nous ont contactés de demander à leurs validateurs de suspendre leur chaîne."
Mais il était déjà trop tard, les critiques et la déception de toutes parts envahissaient les réseaux sociaux. "Ils maintiennent un module EVM partagé sur lequel des dizaines de chaînes dépendent, mais lorsqu'une vulnérabilité critique dans une précompilation apparaît, il n'y a pas eu de diffusion active du correctif vers les canaux principaux, pas de PoC clair, pas de guide de déploiement coordonné. Ces chaînes sont en aval de votre code. Votre travail est de publier rapidement un correctif de sécurité + un PoC prêt à déployer pour que tout l'écosystème puisse se mettre à niveau proprement. Au lieu de cela, nous avons eu une rupture silencieuse en amont, chaque équipe se débattant seule.", a déclaré le développeur @justde.
Actuellement, la capitalisation du jeton Cosmos, ATOM, s'élève encore à 8 milliards de dollars, le classant au 68e rang parmi tous les jetons, mais elle a chuté de plus de 95 % par rapport à son pic.
Le développement de son écosystème a également été continuellement entravé ces dernières années. Rien que ces six derniers mois, des projets de l'écosystème Cosmos comme Neutron, Mars Protocol, Pryzm, Leap Wallet, Cosmostation ont annoncé la cessation de leurs activités, tandis que des projets comme Secret Network, Noble ont annoncé quitter l'écosystème Cosmos pour construire leur propre Layer1 ou migrer vers l'écosystème Ethereum.
Cette série de vols en chaîne a indéniablement amplifié les défauts profonds de Cosmos en matière d'audit de sécurité du code sous-jacent, de mécanismes de coordination inter-chaînes et de systèmes de réponse aux incidents.
Les vulnérabilités de sécurité sont peut-être inévitables en elles-mêmes, mais la logique aberrante de "publier un correctif sans informer les acteurs en aval", ainsi que les diverses manifestations d'une "gestion approximative", suffisent à semer le doute chez tous les constructeurs.






