X-Token - REKT X2



X-token X2 - Le retour du X-ploiter.

Certaines suites ne devraient jamais être écrites.

X-token s'est fait de nouveau rekt, et il semblerait que les flash loans soient toujours fashion.

Près de 4,5 millions de dollars ont été volés sur leur contrat xSNX.

Cette équipe avait déjà perdu 24 millions de dollars il y a trois mois de cela- il s’agissait du même token, et du même procédé d'attaque.

Nous avions écrit, à l'époque, que "XToken est un protocole de qualité".

Nous n'en sommes désormais plus si sûrs.

Pourquoi ont-ils laissé cela se reproduire ?

Transaction d'attaque : 0x924e6a6…

Source : Post Mortem officiel

1 : Flash loan de 25 000 ETH depuis dydx.

2 : On emprunte ~1M de SNX grâce à une combinaison de Aave V1 et V2.

3 : On échange 6.8k ETH contre 519k SNX sur Bancor.

À ce stade, l'assaillant détient environ 1,5 million de SNX.

4 : On échange 1,5 million de SNX sur Kyber contre 6,5 millions d'USDC, réduisant de fait considérablement le prix de SNX.

5 : On échange environ 6.5m USDC contre environ 6.5m sUSD sur Curve.

6 : On transfère environ 2 millions de sUSD au contrat xSNXAdmin (le contrat qui détient les actifs gérés par xSNX), avec l'intention de rembourser la dette en sUSD du contrat afin de débloquer les SNX.

7 : On call la fonction callFunction sur le contrat xSNXAdmin, ce qui burn la dette en sUSD et échange ~614k SNX contre ~811k sUSD à un prix artificiellement bas.

Le fait que l'attaquant ait pu call la fonction callFunction est à l'origine de la vulnérabilité. Cette fonction n'aurait dû pouvoir être appelée qu'à partir du contrat SoloMargin flashloan de dydx qui avait été intégré pour améliorer les performances du fonds dans le cadre des rééquilibrages.

Une instruction requise erronée a permis à la fonction de pouvoir être call par le public.

require(sender==address(this) a été utilisé alors que xToken aurait dû utiliser require(msg.sender==soloMarginAddress).

8 : On échange ~811k sUSD contre ~811k USDC, qui demeurent dans le contrat.

9 : L'assaillant effectue ensuite toutes les actions dans le sens inverse, repassant en ETH et remboursant les prêts.

La source de l'extraction de valeur réside dans le fait que l'assaillant opérait une pression sur le prix du SNX à l'aide d'actifs xSNX, créant de ce fait des opportunités lucratives d'arbitrage externe.

On peut estimer que la première fois était une simple erreur. Mais que penser de ce second épisode ?

L'équipe X-token a déclaré qu'elle allait dédommager (une nouvelle fois) ses utilisateurs, et qu'elle avait pris la décision de supprimer progressivement son produit xSNX.

Comme ils l'ont écrit dans le post-mortem ;

xSNX est de loin notre produit le plus complexe et nous voulons avoir une confiance maximale dans les produits que nous offrons aux investisseurs. Nous sommes très confiants dans nos autres produits et contrats, mais nous ne pouvons plus en dire autant de l'implémentation actuelle de notre contrat xSNX.

Bien que leur réputation soit définitivement entachée en raison des deux positions qu'ils occupent désormais au sein du classement rekt, il semblerait que cette équipe se soucie de ses utilisateurs, et qu'elle prenne des mesures pour rectifier le tir.

La décision de retirer leur offre xSNX peut sembler judicieuse. Toutefois, en admettant publiquement que ce projet était trop compliqué pour eux, ne contribuent-ils pas paradoxalement à ternir leur réputation ?

Un nouveau départ serait peut-être plus profitable.

La sortie d’une suite ouvre souvent la porte à la production d’une série.

Les X-ploiters se lanceront-ils dans une trilogie ?


partager cet article

REKT sert de plateforme publique pour des auteurs anonymes, nous déclinons toute responsabilité quant aux opinions ou contenus hébergés sur REKT.

faites un don (ETH / ERC20): 0x3C5c2F4bCeC51a36494682f91Dbc6cA7c63B514C

avertissement:

REKT n'est responsable en aucune manière du contenu publié sur notre site Web ou en lien avec nos Services, qu'il soit publié ou occasionné par l'Auteur Anon de notre site Web, ou par REKT. Bien que nous fournissions des règles pour la conduite et les publications de l'Auteur Anon, nous ne contrôlons pas et ne sommes pas responsables de ce que l'Auteur Anon publie, transmet ou partage sur notre site Web ou nos Services, et ne sommes pas responsables de tout contenu offensant, inapproprié, obscène, illégal ou autrement répréhensible que vous pourriez rencontrer sur notre site Web ou nos Services. REKT ne saurait être tenu responsable de la conduite, en ligne ou hors ligne, de tout utilisateur de notre site Web ou de nos services.