Squid s'est rapidement exprimé pour souligner qu'un récent exploit de 3 millions de dollars a ciblé un module Gnosis Safe d'une Partie tierce appelé SquidRouterModule, et non ses contrats de routage Cross-chain principaux, après que 86 portefeuilles sur Ethereum et Base ont été vidés en moins de deux heures.
Selon la société de sécurité on-chain Blockaid, l'attaque s'est concentrée sur un module Gnosis Safe nommé SquidRouterModule déployé sur Ethereum et Base, qui était utilisé par certains propriétaires de multisig pour router des transactions Cross-chain impliquant Squid et d'autres protocoles.
Blockaid a rapporté qu'en l'espace d'environ deux heures, l'attaquant a siphonné les fonds de 86 portefeuilles Gnosis Safe, pour des pertes totales d'environ 3 à 3,2 millions de dollars, avant de consolider les gains dans une seule adresse détenant un peu plus de 3,07 millions de DAI.
Dans un résumé détaillé, la rédaction de KuCoin cite Blockaid et Squid en indiquant que les tokens volés ont été échangés en DAI via un pool Uniswap V3 personnalisé mis en place par l'attaquant, qui a ensuite agrégé les fonds siphonnés dans un seul portefeuille pour simplifier le blanchiment.
Le bug principal se trouvait dans la logique de « sécurité des messages » du SquidRouterModule : la couverture de Binance Square explique que le module acceptait simplement une chaîne de caractères constante fournie par l'appelant comme preuve de la validité d'un message, ce qui signifiait que quiconque pouvait voir le code du Smart Contract pouvait copier la chaîne et transmettre des données d'appel arbitraires.
CoinNess rapporte que l'attaquant a exploité cette vérification par chaîne de caractères fixe publique pour exécuter des appels arbitraires depuis les Safes affectés, s'accordant ainsi effectivement la permission de déplacer des actifs hors des multisigs sans confirmation des propriétaires.
La note d'incident de Binance le décrit sans détour, affirmant que la conception « acceptait une chaîne de caractères fixe fournie par l'appelant pour la sécurité des messages », un modèle qui éliminait toute authentification réelle et ouvrait une voie directe pour vider les fonds des portefeuilles intégrés.
Il s'agit d'une classe de risque connue pour les modules Gnosis Safe, comme l'ont montré des recherches antérieures d'OpenZeppelin, selon lesquelles tout module attaché peut exécuter des transactions depuis un portefeuille sans approbation du propriétaire si ses vérifications internes sont faibles ou mal configurées.
Dans ce cas, le module non sécurisé portait le nom de Squid, mais a été développé et déployé par un intégrateur Partie tierce, et non par l'équipe Squid ou ses mainteneurs de protocole principaux.
Dans un post officiel sur X, Squid a déclaré que « cet incident est sans rapport avec le protocole et les contrats principaux de Squid », et a souligné que son contrat de routage principal, identifié on-chain comme 0xce16F69375520ab01377ce7B88f5BA8C48F8D666, « n'a été impliqué dans aucune des transactions malveillantes ».
Le compte rendu de KuCoin note que Squid a précisé que le SquidRouterModule « n'a été ni développé, ni déployé, ni exploité par eux ; le nom a été choisi de manière indépendante par une Partie tierce lors de l'intégration avec Squid », et qu'il se situe complètement en dehors de l'architecture du routeur principal.
L'équipe a en outre souligné que les fonds des utilisateurs, les approbations existantes et les intégrations au niveau du protocole restent sécurisés, et que « le routage Cross-chain principal de Squid reste non affecté », tandis qu'elle continue de surveiller la situation et de se coordonner avec les sociétés de sécurité.
Malgré cela, l'image est mauvaise : comme le souligne l'article de KuCoin, les titres associent inévitablement « Squid » à « hack », même si le rayon d'action est limité à un module Safe négligent dont le seul vrai lien avec le projet est son image de marque et son utilisation de Squid comme l'un des nombreux routeurs intégrés.
Les chercheurs en sécurité ont longtemps averti que la puissance de Gnosis Safe s'accompagne d'une mise en garde : tout module branché sur un Safe peut exécuter des transactions sans confirmation des propriétaires si sa logique est défaillante, ce qui est exactement ce qui s'est produit ici une fois que la vérification par chaîne de caractères fixe a été contournée.
Pour l'écosystème plus large du Cross-chain et des extensions de portefeuille, l'incident du SquidRouterModule est un autre exemple concret de la façon dont la composabilité, combinée à des hypothèses de sécurité négligentes dans les modules périphériques, peut ouvrir des surfaces d'attaque complètement en dehors des propres contrats et audits d'un protocole.
Cela souligne également une réalité douloureuse pour les équipes d'infrastructure comme Squid, qu'Axelar décrit comme « un protocole qui permet le routage de liquidités Cross-chain et les échanges via un seul SDK » : même lorsque vos propres contrats sont solides, les wrappers de Parties tierces peuvent toujours entraîner votre marque dans les titres d'exploit s'ils ne respectent pas les règles de base de l'hygiène de sécurité.


