Imaginez déposer l’équivalent de quelques euros dans un coffre-fort numérique et repartir avec la moitié de tout ce qu’il contient. C’est exactement ce qui s’est produit le 8 novembre 2026 sur ACryptoS. En quelques transactions parfaitement calculées, des attaquants ont vidé 77 vaults répartis sur cinq blockchains et emporté environ 665 000 dollars. La faille n’était ni complexe ni nouvelle dans son principe : un simple oubli de vérification dans une fonction de dépôt multi-tokens a suffi à tout faire basculer.
Comment une liste trop courte a ouvert la porte au pillage
ACryptoS fonctionnait comme un agrégateur de rendement classique. Les utilisateurs déposaient des actifs dans des stratégies de liquidité concentrée et recevaient en échange des parts (shares) représentant leur quote-part du vault. Ces parts donnaient droit à une portion des deux tokens détenus par le coffre. Tout reposait sur un calcul simple : plus votre dépôt représentait une part importante de la valeur totale, plus vous receviez de shares.
Le problème se trouvait dans la fonction depositMulti. Elle acceptait une liste d’amounts correspondant aux différents tokens du vault. Or, rien n’empêchait de lui envoyer une liste plus courte que prévu. L’attaquant pouvait ainsi indiquer un montant pour un seul token et laisser le contrat ignorer purement et simplement le second actif. Résultat : le vault sous-évaluait massivement ses propres réserves au moment du calcul des nouvelles shares.
Le mécanisme précis de l’attaque
Prenons un exemple chiffré pour comprendre l’ampleur de l’erreur. Un vault détient 100 000 dollars d’actifs et a déjà émis 100 shares. Si, au moment d’un nouveau dépôt, le contrat ne voit plus que 10 dollars de valeur (parce qu’il a oublié le second token), un dépôt de 10 dollars paraît équivalent à la totalité des réserves. Le système émet alors 100 nouvelles shares. L’attaquant se retrouve propriétaire de la moitié du vault pour un investissement ridicule. Il n’a plus qu’à racheter ses parts contre les deux tokens réellement présents dans le coffre.
C’est exactement ce qui s’est produit. Les transactions étaient petites en apparence, mais le nombre de shares émises était démesuré. Une fois les parts en poche, les attaquants les ont immédiatement brûlées en demandant le retrait. Les vaults ont payé sans hésiter, car le contrat considérait ces shares comme légitimes.
Point crucial : la perte ne se voit pas forcément sur le solde de shares dans le portefeuille. Le nombre de parts reste le même, mais leur valeur sous-jacente s’effondre dès que l’attaquant a retiré sa part.
Cinq chaînes touchées en cascade
L’attaque n’est pas restée confinée à un seul réseau. Les 77 vaults concernés se trouvaient sur Arbitrum, BNB Chain, Polygon, Base et Optimism. Dès qu’une première transaction réussie est apparue on-chain, d’autres acteurs ont pu copier le schéma. Chaque déploiement partageait la même logique défaillante. Il n’était donc pas nécessaire de bridginger des fonds pour vider un vault sur une autre chaîne : il suffisait de reproduire le même appel de fonction localement.
Cette propagation rapide explique pourquoi le montant total a grimpé si vite. Chaque vault avait ses propres réserves et son propre ratio de tokens. Certains étaient plus exposés que d’autres selon la proportion d’actifs « oubliés » dans le calcul. Un coffre dont la majorité de la valeur reposait sur le token ignoré souffrait beaucoup plus qu’un vault équilibré.
Ce que les utilisateurs peuvent encore retirer
Dès la découverte de l’exploit, l’équipe a coupé les dépôts. Les retraits, eux, sont restés ouverts. Cette décision a un double effet. Elle empêche de nouvelles attaques via la fonction vulnérable, tout en laissant aux détenteurs légitimes la possibilité de récupérer ce qui reste dans leur vault.
Attention cependant : « retraits ouverts » ne signifie pas « récupération intégrale ». Tout dépend de l’état précis de chaque vault au moment où vous lancez la transaction. Un coffre non touché peut encore payer la quasi-totalité de la valeur initiale. Un vault lourdement drainé ne pourra restituer que ce qui n’a pas encore été emporté. Certains positions plus complexes, liées à de la liquidité concentrée, nécessitent même un débouclage préalable avant de pouvoir payer les utilisateurs.
Le solde de shares affiché dans le portefeuille ne donne aucune garantie. Seule l’estimation de retrait et, surtout, le reçu de la transaction finale permettent de savoir exactement ce qui a été récupéré. Les interfaces peuvent afficher des estimations optimistes qui ne correspondent plus à la réalité on-chain après l’attaque.
La bounty de 10 % et les questions sans réponse
ACryptoS a annoncé une prime de 10 % pour tout retour de fonds. C’est une pratique classique dans l’écosystème DeFi. Elle donne une motivation financière aux détenteurs des adresses d’attaque pour négocier plutôt que de tenter de blanchir l’intégralité des gains. Mais une offre n’est pas un retour effectif. Tant qu’aucune transaction n’apparaît vers une adresse de récupération clairement identifiée, le montant récupéré reste théorique.
Même si des fonds reviennent, se pose ensuite la question de la répartition. Faut-il compenser vault par vault, chaîne par chaîne, ou globalement ? Comment traiter les utilisateurs qui ont déjà retiré le solde restant ? Comment considérer ceux qui ont acheté des shares après l’attaque, à un prix déjà déprécié ? Aucun plan de distribution n’a encore été publié. Les victimes restent donc dans l’attente.
Pourquoi le nombre de shares ne ment pas… et trompe en même temps
Beaucoup d’utilisateurs regardent encore le nombre de parts dans leur wallet et se rassurent. C’est une erreur. Lorsqu’un attaquant fait émettre massivement de nouvelles shares, le pourcentage de propriété de chaque détenteur existant diminue automatiquement. Même si votre solde de shares n’a pas bougé, votre part du gâteau a fondu. Quand l’attaquant retire ensuite ses parts, le gâteau lui-même rétrécit. Les shares restantes se partagent un pool beaucoup plus petit.
C’est précisément ce qui distingue une simple dilution d’un vol pur et simple. Ici, la dilution a été artificielle et immédiate, suivie d’un retrait qui a concrétisé la perte. Les utilisateurs n’ont pas eu le temps de réagir entre les deux étapes.
Leçons pour l’ensemble de la DeFi
Cette attaque n’est pas isolée. Elle rappelle d’autres incidents où une mauvaise validation des inputs a permis des émissions excessives de parts ou de tokens. Le cas de yETH chez Yearn, quelques mois plus tôt, montrait déjà qu’un vieux contrat pouvait laisser passer des quantités disproportionnées. La différence réside dans les montants et dans le fait qu’ici la faille concernait explicitement une fonction multi-tokens.
Le point commun reste le même : les développeurs font confiance à la longueur de la liste fournie par l’utilisateur. Or, dans un environnement adversarial, on ne doit jamais faire confiance à la forme des données entrantes. Une liste courte, un zéro oublié, un index mal géré… tout cela peut devenir une porte d’entrée.
Les vaults multi-actifs sont particulièrement exposés. Ils doivent toujours valoriser l’intégralité de leurs réserves, même lorsque l’utilisateur ne dépose qu’un seul token. Accepter un dépôt mono-token est légitime. Calculer les shares sans tenir compte du second actif ne l’est pas.
Comment reconstruire sa position individuelle
Pour un déposant touché, la seule façon d’y voir clair consiste à rassembler plusieurs éléments :
- Le reçu de dépôt initial (montant fourni et nombre de shares reçues)
- Les soldes du vault juste avant et juste après l’exploit
- Le nombre total de shares en circulation à ces deux moments
- Le reçu de retrait final (tokens réellement reçus)
Ces quatre points permettent de calculer précisément la perte économique. Un simple regard sur le TVL global du protocole ne sert à rien : il mélange des vaults touchés et non touchés, et intègre aussi les retraits légitimes effectués après l’annonce de dépréciation.
Il faut également tenir compte de l’évolution naturelle des prix des deux tokens et des éventuels rééquilibrages de liquidité concentrée. Une part de la variation de valeur n’est pas liée à l’attaque. Seule la partie correspondant à l’émission disproportionnée de shares et au retrait qui a suivi peut être attribuée à l’exploit.
La dépréciation du protocole change la donne
ACryptoS a indiqué qu’il allait déprécier le protocole. Cela signifie concrètement que les interfaces vont progressivement disparaître ou être marquées comme legacy. Les contrats, eux, continueront d’exister on-chain. Les fonctions de retrait devraient rester accessibles tant que les réserves le permettent. Mais l’absence de maintenance active augmente le risque de nouvelles surprises, notamment si d’autres dépendances (oracles, pools de liquidité) évoluent.
Les utilisateurs qui ont déposé à différentes époques peuvent se retrouver face à des familles de contrats différentes. Certaines interfaces actuelles ne gèrent plus les anciennes versions. Il est donc important de vérifier précisément quelle adresse de vault correspond à sa position avant de tenter un retrait.
Ce qu’il faut surveiller dans les prochaines semaines
Plusieurs signaux permettront de savoir si la situation s’améliore réellement pour les victimes :
- L’apparition de transactions vers une adresse de récupération officiellement annoncée
- La publication d’un plan de distribution détaillé (méthode de calcul, snapshot, éligibilité)
- Le maintien effectif des retraits sur les vaults non totalement vidés
- D’éventuelles communications sur le sort des positions de liquidité concentrée encore ouvertes
Tant que ces éléments n’apparaissent pas, le montant de 665 429 dollars reste une estimation de perte brute, et non un chiffre de récupération nette.
Une faille structurelle plus qu’un bug isolé
Au fond, l’incident ACryptoS révèle un problème plus large dans la conception des vaults multi-tokens. Beaucoup de protocoles ont hérité de logiques écrites à une époque où les attaques sophistiquées étaient moins fréquentes. Les audits passent parfois à côté de cas limites portant sur la longueur des tableaux ou sur la gestion des zéros implicites.
La solution technique est pourtant simple : toujours valoriser l’intégralité des réserves du vault, indépendamment de la forme du dépôt. Accepter un dépôt mono-token ne doit jamais conduire à ignorer la valeur du second actif. Des tests unitaires spécifiques sur les listes de longueur variable auraient sans doute détecté le problème bien avant le 8 novembre.
Les utilisateurs, de leur côté, tirent une leçon amère. Même un protocole qui affiche des audits et une activité régulière peut cacher une faille critique dans une fonction secondaire. La diversification et la limitation des montants exposés restent les seules protections réellement efficaces face à ce type de risque.
Le coût humain derrière les chiffres
Derrière les 665 000 dollars et les 77 vaults se trouvent des personnes qui avaient placé des fonds dans l’espoir de générer du rendement. Certains avaient déposé des sommes modestes, d’autres des montants plus conséquents. Tous se retrouvent aujourd’hui confrontés à la même incertitude : combien reste-t-il réellement, et y aura-t-il une compensation un jour ?
La transparence on-chain permet au moins de vérifier soi-même l’état de son vault. C’est un avantage par rapport aux plateformes centralisées où l’utilisateur dépend entièrement de la bonne foi de l’opérateur. Mais cette transparence n’efface pas la perte. Elle permet seulement de la quantifier avec précision.
Pour l’instant, le message de l’équipe est clair : retirez ce que vous pouvez. Le reste dépendra de la capacité à négocier le retour d’une partie des fonds et, ensuite, à organiser une répartition équitable. Deux étapes qui, historiquement, prennent souvent des semaines, voire des mois.
Un rappel brutal pour toute la DeFi
L’affaire ACryptoS s’ajoute à une longue liste d’exploits liés à des erreurs de validation d’inputs. Chaque nouvel incident renforce l’idée que la sécurité des smart contracts reste un chantier permanent. Les montants en jeu progressent, les attaquants s’organisent, et les délais entre la découverte d’une faille et son exploitation se raccourcissent.
Les protocoles qui gèrent des stratégies multi-actifs doivent désormais considérer les listes de longueur variable comme un vecteur d’attaque prioritaire. Les utilisateurs, eux, doivent intégrer le risque de dilution artificielle dans leur analyse de risque. Un vault peut paraître solide sur le papier et s’effondrer en quelques blocs à cause d’un détail technique.
Pour les déposants d’ACryptoS, l’heure est à l’action immédiate : vérifier l’état de chaque position, exécuter les retraits possibles, et conserver précieusement tous les reçus de transaction. Ces documents seront indispensables si un jour un processus de compensation voit le jour. En attendant, le protocole continue de vivre ses dernières semaines sous une forme dépréciée, tandis que les 665 000 dollars manquants cherchent encore un chemin de retour.
L’histoire n’est pas terminée. Elle ne le sera vraiment que le jour où les victimes sauront exactement ce qu’elles peuvent espérer récupérer… et ce qu’elles ont définitivement perdu.









