Term Labs a confirmé le 23 août qu'un exploit de gouvernance avait touché ses Term Vaults. Le montant exact n'a pas encore été confirmé par l'équipe elle-même : PeckShield et CertiK évaluent les pertes à environ 8,5 millions de dollars.
PeckShield a suivi la sortie d'environ 2 843 ETH, valorisés autour de 6,9 millions de dollars au moment de l'incident, ainsi que 1,68 million d'USDC. Ces USDC ont ensuite été échangés contre environ 1,68 million de DAI. Le portefeuille associé à l'opération avait auparavant reçu des fonds provenant de Tornado Cash.
Le problème se trouve dans la gouvernance des vaults
C'est ce qui distingue l'incident d'une exploitation DeFi plus classique. Term n'a pour l'instant signalé aucune compromission de ses marchés directs d'emprunt et de prêt. Les actifs ont été retirés de produits de vault construits sur l'infrastructure Yearn V3 et entourés d'une couche de gouvernance propre à Term.
Yearn a précisé que le vecteur d'attaque concernait ce wrapper de gouvernance personnalisé. Les vaults Yearn standards n'utilisent pas cette configuration et sont, selon Yearn, hors du périmètre de l'incident.
La documentation de Term décrivait pourtant plusieurs barrières. Les fournisseurs de liquidité participaient au DAO et pouvaient opposer leur veto aux opérations placées dans une file d'attente. Un Zodiac Delay Module imposait normalement un délai de sept jours avant exécution.
Une protection de sept jours existait déjà
Le chemin exact utilisé par l'attaquant n'est pas encore confirmé par un post-mortem de Term Labs. L'entreprise n'a pas expliqué publiquement quel rôle ou quelle fonction de gouvernance a permis de contourner les protections.
Une analyse on-chain publiée après l'attaque apporte toutefois un scénario beaucoup plus précis. Elle indique qu'une proposition disposant du pouvoir de vote nécessaire aurait fait exécuter un ensemble d'actions capable de modifier les paramètres du Zodiac Delay Module lui-même, notamment en ramenant son délai à zéro avant d'enchaîner avec les transactions suivantes.
Si cette lecture est confirmée, le point faible ne serait donc pas l'absence de timelock. Une proposition autorisée par la gouvernance aurait pu modifier le mécanisme censé ralentir précisément ce type d'action.
Term Finance n'a pas encore publié son analyse technique finale permettant de considérer cette séquence comme définitivement établie.
Les Meta Vaults ne rouvriront pas
La réaction de Term Labs est beaucoup moins provisoire. Tous les Term Meta Vaults ont été fermés, leurs rôles de gouvernance DAO ont été révoqués et les nouveaux dépôts sont désormais bloqués de façon permanente. Les retraits sur les fonds restant disponibles demeurent ouverts.
D'après l'enquête initiale de Term, le protocole sous-jacent et les marchés directs d'emprunt et de prêt ne sont pas affectés. L'équipe précise encore vérifier l'étendue de l'incident.
Term travaille avec des équipes de sécurité externes sur les possibilités de récupération des actifs et indique qu'elle étudiera des solutions pour les éventuelles pertes restant à la charge des déposants. Aucun plan de remboursement détaillé n'a été annoncé au 24 août.
Environ deux tiers des actifs des vaults
Avant l'attaque, les données DefiLlama citées par CoinDesk plaçaient environ 12,45 millions de dollars dans le produit de vaults de Term. Une perte estimée à 8,5 millions représente donc autour de 68 % de cette valeur, avec la quasi-totalité des dépôts Ethereum de ces vaults emportée.
Le nombre brut n'est pas la seule alerte. Term documentait un timelock, un droit de veto pour les LP et une architecture construite sur des contrats Yearn V3. L'incident s'est produit dans la couche qui décidait de ce que cette infrastructure avait le droit de faire.