Qu'est-ce que Transaction Replacement Attack ?
Une Transaction Replacement Attack se produit lorsqu'une personne envoie un paiement en crypto, puis diffuse rapidement une version différente de cette transaction avec des détails modifiés avant qu'elle ne soit confirmée. L'objectif est de tromper la personne qui accepte le premier paiement en attente. Imaginez promettre de l'argent au comptoir, puis courir pour remplacer les billets pendant que la caissière détourne le regard.
Si une transaction apparaît comme en attente, il est sûr de la considérer comme payée. Pas tout à fait. Tant qu'un mineur ne l'inclut pas dans un bloc, des remplacements peuvent encore se produire et une Transaction Replacement Attack peut inverser le résultat.
Comment fonctionne Transaction Replacement Attack
Récit rapide en gardant à l'esprit un simple moment de paiement.
- Étape 1: Un attaquant vous envoie un paiement avec des frais faibles. Vous le voyez en attente et vous êtes rassuré.
- Étape 2: Avant la confirmation, l'attaquant crée une nouvelle transaction qui dépense les mêmes fonds, souvent via Replace by Fee (RBF) ou en la renvoyant avec le même nonce sur les chaînes à comptes.
- Étape 3: La version de remplacement propose des frais plus élevés et attire davantage les mineurs, elle est donc minée tandis que la première version est abandonnée.
- Étape 4: Cela est plus simple lors d'une forte congestion du réseau quand les mineurs priorisent les frais les plus élevés.
- Étape 5: Vous remettez le produit ou le service sur la base d'un paiement en attente et vous vous retrouvez sans paiement une fois que la chaîne confirme la transaction de remplacement.
Voilà le procédé. Simple, un peu sournois, et évitable.
Pourquoi Transaction Replacement Attack compte
Voici pourquoi cela vous concerne, que vous gériez un paiement ou que vous transfériez des pièces à un ami.
- Avantage: Les mécanismes de remplacement permettent aux utilisateurs honnêtes d'accélérer des paiements bloqués en augmentant les frais, pratique lorsque vous avez besoin d'une confirmation immédiate.
- Perspective: Les mêmes outils qui vous aident peuvent aussi être utilisés contre vous si vous faites confiance à un paiement en attente pour des biens ou un accès.
- Pertinence: Vous verrez cela sur les terminaux de paiement, lors de mint de NFT, dans les échanges OTC et partout où l'on accepte des transactions en attente.
Utilisez un portefeuille de cryptomonnaie qui signale clairement les transactions remplaçables et affiche le nombre de confirmations. Pour les paiements, exigez quelques confirmations avant de remettre quoi que ce soit d'important.
Caractéristiques principales de Transaction Replacement Attack
Ce qui distingue ce type d'attaque, en termes simples :
- Moment: Cela se passe avant la confirmation, alors que la transaction flotte encore dans le mempool.
- Incitations: Des frais plus élevés ou de meilleures conditions incitent les mineurs ou validateurs à inclure le remplacement plutôt que l'original.
- Signaux: Certaines transactions sont marquées comme remplaçables, et les chaînes à comptes permettent des remplacements avec le même nonce.
- Cible: Les commerçants ou pairs qui acceptent les paiements en attente sont la cible vulnérable.
Variations
Même principe, mécanismes légèrement différents selon la chaîne.
- RBF: L'expéditeur marque un paiement comme remplaçable puis diffuse plus tard une version avec des frais plus élevés qui modifie la sortie ou le destinataire.
- Échange de nonce: Sur les chaînes à comptes, un utilisateur renvoie une transaction avec le même nonce mais plus de gas, ce qui annule ou modifie l'intention précédente.
- Astuce de remboursement: L'expéditeur paie d'abord un marchand, puis remplace le paiement en attente par un autre qui renvoie les fonds à une adresse qu'il contrôle.
Ne considérez pas un paiement comme définitif tant que votre nœud n'indique pas que la transaction est réglée. Une Transaction Replacement Attack perd de son effet après un nombre suffisant de confirmations.
Exemple
Un café accepte un paiement en attente pour un latte, l'acheteur diffuse immédiatement une version de remplacement avec des frais plus élevés qui envoie les fonds ailleurs, et le barista se rend compte plus tard que l'acheteur abusait de la remplaçabilité.
Fait amusant
La hausse des frais a été introduite pour aider les utilisateurs honnêtes à sauver des transactions bloquées, bien avant que cela ne devienne un mème pour tromperie. Comme beaucoup d'initiatives techniques, c'est Rolex rencontre les fils Reddit selon qui détient les clés.
Résumé
Version courte : ne livrez pas un produit sur la base d'un paiement incertain. Attendez un ou deux blocs, puis détendez-vous.
