Front-running

Ce contenu éducatif vous est proposé par bunq, la néobanque qui facilite vos investissements crypto.
<strong>Investissez dans les cryptos en toute simplicité</strong>
Investissez dans les cryptos en toute simplicité

Sur les marchés financiers, le front-running est une pratique qui consiste à profiter d'informations inconnues du public concernant de gros volumes d'achat ou de vente à venir, pour se positionner avant l'exécution de ces ordres, et profiter ainsi des variations de prix qui en découlent. Il n'existe pas de traduction parfaitement standardisée de ce terme en français, on peut dire :

  • Courtage anticipé
  • Prise de position anticipée
  • Anticipation de position
  • Exécution anticipée

Le front-running est donc un délit d'initié. Un participant au marché anticipe les fluctuations de prix à venir découlant de gros ordres d'achat ou de vente, dont lui seul a connaissance. Ainsi, il peut profiter de ces informations inconnues des autres participants, pour se positionner avant tout le monde, et générer du profit.

Dans les marchés traditionnels, cette pratique est illégale. Elle est en effet déloyale, et s'apparente à une tricherie; cependant, il est généralement difficile de prouver qu'un acteur y a eu recours.

Le front-running dans le contexte des cryptomonnaies consiste à exploiter des informations sur les transactions en attente, pour en tirer un profit avant que ces transactions ne soient exécutées ou confirmées. Bien que souvent considéré comme non éthique, il est particulièrement répandu dans la finance décentralisée, en raison de la transparence des blockchains publiques et de leurs mempools (l'espace mémoire où sont stockées les transactions en attente).

Fonctionnement du front-running

Sur une blockchain publique comme Ethereum, les transactions ne sont pas immédiatement confirmées. Elles sont d'abord placées dans un mempool, sorte de file d'attente des transactions en attente. Les mineurs ou validateurs sélectionnent ensuite les transactions à inclure dans un bloc, souvent en fonction des frais de gas proposés.

Cette transparence permet à des acteurs opportunistes d'observer les transactions en attente, et d'agir en fonction de leurs conséquences sur les marchés. Ils utilisent le plus souvent des bots automatisés.

Le front-running est facilité dans l'univers des cryptomonnaies à cause des propriétés suivantes, inhérentes aux blockchains publiques :

  • Transparence : toutes les transactions présentes dans le mempool sont visibles, révélant l'intention de l'utilisateur (ex. : achat d'un token) ;
  • Vitesse : les bots peuvent réagir en millisecondes, surpassant les utilisateurs humains ;
  • Impact financier : même de petites variations de prix peuvent générer des profits significatifs, sur des volumes élevés.
Mempool Ethereum et Front-running
Le mempool d'Ethereum est public - https://etherscan.io/txspending

Front-running classique

Il est fréquent sur les DEX à AMM comme Uniswap, où les transactions influencent directement le prix d'un jeton.

Le front-runner observe une transaction en attente dans le mempool (ex. : un ordre d'achat important qui fera monter le prix d'un jeton) et soumet une transaction similaire, avec des frais de gas plus élevés, pour qu'elle soit exécutée en premier. Cela permet à l'attaquant de profiter d'un mouvement de prix anticipé.

Par exemple, un utilisateur soumet une transaction pour acheter 100 ETH d’un jeton sur Uniswap, ce qui fera grimper son prix de 3 %. Un bot détecte cette transaction dans le mempool, puis soumet immédiatement un ordre d'achat pour 10 ETH avec des frais de gas plus élevés. Il revend ensuite les jetons correspondants, immédiatement après l’exécution de l’ordre initial, en profitant ainsi de la hausse du prix.

L’utilisateur initial paie un prix plus élevé, car son gros volume d'achat engendre du slippage (glissement du prix). L’attaquant, en revanche encaisse un profit.

Back-running

Cette variante consiste à « enchaîner » une transaction immédiatement après une transaction importante, pour profiter des effets de cette dernière sur le marché, sans toutefois la devancer. Cette pratique a généralement lieu lors d'événements ayant la capacité de modifier considérablement l'état d'un marché, comme l'ajout de liquidités massives dans un pool, ou le lancement d'un jeton.

Par exemple, un fournisseur de liquidité compte ajouter une importante quantité de fonds dans un pool Uniswap. Cela permettra de stabiliser le prix des jetons échangés. Un bot détectant cette transaction peut placer à sa suite un ordre d'achat ou de vente, et profiter des nouvelles conditions de marché pour réaliser un arbitrage.

Bien que cette technique soit moins nuisible que le front-running classique, elle peut affecter certains utilisateurs, en exploitant des conditions de marché temporaires et indécelables pour le commun des mortels.

Attaques en sandwich

Dans cette forme avancée de front-running, l'attaquant place deux transactions, avant et après la transaction ciblée. L'idée est toujours de profiter du slippage engendré par une grosse transaction. Par exemple, un bot détecte une transaction de grande taille, ayant le potentiel de faire varier le prix d'un jeton de 2 ou 3% dans un AMM. Il va alors placer un ordre d'achat juste avant, et un ordre de vente juste après. Il génère donc ses 2 ou 3% de profit (déduction faite des frais). L'utilisateur « front-runné », en revanche, aura payé le prix fort !

Les attaques sandwich sont particulièrement lucratives dans des pools à faible liquidité, ou le slippage est élevé.

Front-running des mineurs/validateurs

Les mineurs / validateurs ne sélectionnent pas leurs transactions au hasard dans les mempools. Ils vont en général privilégier celles qui présentent le plus de frais. En outre, ils ont le pouvoir de réorganiser le contenu des blocs produits, voire d'insérer leurs propres transactions pour maximiser leur profits personnels. De même, ils peuvent en faire profiter des complices.

Cette pratique était très répandue sur Ethereum avant le passage à la preuve d'enjeu. Elle reste toujours possible, surtout avec l'aide d'un validateur complice. Par exemple, le mineur/validateur malicieux repère une grosse transaction d'achat. Il va alors tout simplement insérer sa propre transaction d'achat avant, pour profiter de la variation de prix. Les outils comme Flashbots, qui permettent de soumettre directement des transactions aux mineurs sans passer par le mempool public, facilitent ce genre de pratiques.

Manipulation d'oracle

L'idée est de profiter des mises à jour d'un oracle de prix, comme Chainlink. Le front-runner détecte une transaction en attente, et anticipe la mise à jour de l'oracle pour profiter de la variation à venir. Il ne s'agit pas de manipuler le prix donné par l'oracle, comme dans les attaques flash loan. Il suffit d'utiliser un bot qui calcule les variations de prix en fonction de la taille des transactions à venir, et joue sur la fréquence de rafraichissement de l'oracle.

Cette pratique se prête au contexte des protocoles de lending comme Aave ou Compound, ou au trading de jetons synthétiques.

NFT

Le front-running est également fréquent sur les plateformes dédiées au trading de NFT.

Exemple classique : un bot repère une enchère sur un NFT populaire vendu sur OpenSea. Il place alors une enchère légèrement supérieure, avec des frais de gas plus élevés. Sa transaction sera plus rapide, et il pourra profiter de l'augmentation du prix du NFT.

Cette pratique est très frustrante pour un collectionneur de NFT honnête : il va se faire chiper les pièces qu'il convoite. De plus, cela peut augmenter artificiellement la valeur des NFT. Cela arrive régulièrement lors des drops de NFT populaires, ou durant des phases d'enchères sur des collections très convoitées.

Les outils du front-runner malicieux

Le front-runner exploite les caractéristiques techniques propres aux blockchains publiques, en s'aidant de bots programmés à sa convenance :

  • Mempools connus de tous : la transparence des transactions en attente sur Ethereum ou d’autres blockchains permet aux bots de les surveiller en temps réel ;
  • Frais de gas dynamiques : les attaquants utilisent des frais élevés, pour s’assurer que leurs transactions sont traitées en priorité ;
  • Smart contracts vulnérables : certains protocoles DeFi mal conçus ne protègent pas contre les manipulations de l’ordre des transactions.

Les outils comme les MEV bots ou Flashbots permettent d’exécuter des stratégies complexes de front-running à grande échelle, mais aussi de s'en prémunir.

Régulation et solutions

Bien que le front-running soit illégal dans les marchés financiers traditionnels, ce n'est pas le cas dans la DeFi. En effet, ces protocoles opèrent sans intermédiaires réglementés. Cela crée une zone grise où le front-running est souvent perçu comme une « caractéristique » de ces systèmes, plutôt qu’une fraude. La pratique reste cependant éthiquement discutable !

En France, les régulateurs comme l’AMF surveillent les pratiques sur les marchés crypto. Si le front-running est effectué dans un cadre réglementé, comme sur Binance, il pourrait être poursuivi comme une manipulation de marché. Dans la DeFi, cependant, les recours légaux sont inexistants.

Heureusement, il existe des solutions techniques pour lutter contre le front-running :

  • Fair Ordering Protocols : des protocoles comme Arbitrum ou Optimism explorent des mécanismes pour randomiser ou masquer l’ordre des transactions.
  • Mempool privé : les outils comme Flashbots permettent aux utilisateurs d’envoyer des transactions directement aux mineurs, réduisant l’exposition publique. Ils sont à la fois les amis et les ennemis des front-runners.
  • Slippage protection : les DEX comme Uniswap V3 offrent des options pour limiter le slippage, bien que cela ne bloque pas totalement les sandwich attacks.
  • Oracles robustes : les oracles décentralisés comme Chainlink, aux mises à jour fréquentes, réduisent les opportunités.
  • ZKP (Zero-Knowledge Proofs) : les solutions basées sur la confidentialité, comme les ZK Rollups , peuvent masquer les détails des transactions.

Conclusion

Le front-running dans les cryptomonnaies, et particulièrement dans la DeFi, prend des formes variées, en exploitant la transparence des blockchains publiques. Ces pratiques peuvent décourager les nouveaux utilisateurs, si elles ne sont pas expliquées ou atténuées. Les solutions techniques (mempools privés, ZKP) et éducatives sont essentielles pour limiter son impact.

Pour aller plus loin

Pour comprendre le fonctionnement des AMM, le phénomène du slippage, ou encore l'arbitrage entre DEX, n'hésitez pas à consulter notre série d'articles :