Comment perdre 600 000 dollars en un clic sur Solana : l’erreur incroyable d’OptiFi

Une erreur d’anthologie – OptiFi est un protocole proposant un marché d’option décentralisé sur Solana. Celui-ci vient d’essuyer plus de 600 000 dollars de pertes lors d’une mise à jour de son protocole. Une fausse manipulation très coûteuse pour la plateforme. 

OptiFi : une mise à jour leur donne du fil à retordre

Cette affaire a débuté le 29 août, alors que les développeurs du protocole OptiFi ont tenté de déployer une mise à jour de leur application. Cependant, à cause d’une congestion importante du réseau, la manœuvre a pris plus de temps qu’à l’habitude. De surcroît, celle-ci n’a pas retourné le message de succès attendu. 

Face à ce délai, le développeur en charge du déploiement a préféré annuler le déploiement en mettant fin au processus. 

Plus tard, le développeur s’est aperçu du transfert de 17 SOL sur une adresse de transition. Celle-ci est utilisée lors du déploiement. 

« Cela signifie qu’un nouveau compte temporaire a été créé, mais qu’il n’allait pas être utilisé par l’application. Nous voulions donc récupérer les jetons SOL dans le nouveau compte temporaire. »

Malheureusement, comme l’équipe avait créé le compte lors du déploiement, mais que celui-ci n’était pas allé jusqu’au bout, les développeurs n’ont pas pu récupérer la seed phrase de l’adresse temporaire. 

Ils ont alors tenté une méthode différente en utilisant la commande solana program close.

« Nous nous sommes souvenus que nous avions déjà réussi à collecter des jetons SOL dans le compte temporaire sans utiliser la seed phrase sur le devnet. L’objectif était de fermer le compte de l’application pour récupérer le solde SOL des comptes temporaires liés. »

Malheureusement, sans le savoir, le développeur a utilisé une commande qui allait être fatale. Une catastrophe était arrivée et il allait vite s’en rendre compte.

>> Mettez vos cryptomonnaies au vert. Choisissez un portefeuille Ledger (lien commercial) <<

661 000$ perdus à jamais

Ainsi, la commande puis la transaction qu’elle a émise ont toutes deux été finalisées. Le développeur a effectivement récupéré les SOL, affaire résolue. 

Oui, mais non. 

En tentant de redéployer la mise à jour, le développeur s’est rendu compte qu’il avait clôturé définitivement l’application d’OptiFi. En effet, lors du redéploiement, un message d’erreur l’avertit de la clôture du programme déployé. Ainsi, il « ne peut pas être redéployé, à moins qu’un nouvel identifiant de programme ne soit utilisé ». 

« TOUS les comptes de marge des utilisateurs, les jetons USDC, les jetons d’option et les coffres USDC de l’AMM sont verrouillés, parce qu’ils utilisent des PDA, qui sont liés à l’adresse de l’application. »

Par conséquent, l’intégralité de la TVL du protocole à savoir environ 661 000 $ sont définitivement bloqués sur une adresse devenue inaccessible. 

OptiFi fait rimer précipitation et perte de fonds 

Dans un thread publié sur Twitter qui revient sur les évènements, les équipes de OptiFi ont identifié 3 points sur lesquels ils auraient dû travailler en amont pour éviter la catastrophe : 

  • Exécuter de manière plus stricte l’approche de « surveillance par les pairs ». Celle-ci exige qu’au moins 3 développeurs soient présents lors d’un déploiement. 
  • Séparer les fonds communs de capitaux (AMM) de l’application principale, afin de minimiser l’impact de telles erreurs. 
  • 3. NE PAS SE PRÉCIPITER

D’après les informations révélées, cette erreur n’aura que peu impacté les utilisateurs du protocole. En effet, OptiFi annonce que 95 % des fonds perdus appartenaient aux membres de l’équipe. 

OptiFi a également annoncé qu’ils compenseraient l’intégralité des utilisateurs lésés par cette erreur. 

Nouveau coup dur pour l’écosystème de Solana et ses développeurs. En effet, celui-ci avait déjà fait la une des médias spécialisés au début du mois d’août après qu’une faille dans l’un des wallets ait permis le siphonnage d’une dizaine de milliers de wallets.

Les catastrophes et les hacks, ça n’arrive pas qu’aux autres ! Il vaut mieux ne jamais confier la sécurité de vos cryptomonnaies à un tiers. Pour dormir l’esprit tranquille, équipez-vous d’un wallet hardware sécurisé Ledger, il y en a pour toutes les bourses. Votre sécurité n’a pas de prix (lien commercial).

Renaud H.

Ingénieur en software et en systèmes distribués de formation, passionné de cryptos depuis 2013. Touche à tout, entre mining et développement, je cherche toujours à en apprendre plus sur l’univers des cryptomonnaies et à partager le fruit de mes recherches à travers mes articles.