Address poisoning : C’est quoi et comment s’en protéger ?

Address Poisoning Crypto
Getting your Trinity Audio player ready...

Le phénomène de « l’address poisoning » est une nouvelle technique de fraude qui consiste à voler les crypto monnaies des utilisateurs par inattention. Pour vous éviter d’être victime de ce vecteur d’attaque, découvrons comment ça fonctionne et surtout, les différentes solutions pour se protéger efficacement.

Qu’est-ce que l’address poisoning ?

L’address poisoning est une nouvelle forme d’escroquerie qui consiste à dérober vos crypto-monnaies suite à une erreur d’inattention.

Pour cela, un pirate va envoyer une petite quantité de crypto-monnaies sur une adresse précise afin « d’empoisonner » son historique. Si l’utilisateur copie l’adresse de la dernière transaction en pensant que c’est la sienne, il va envoyer ses crypto-monnaies à l’adresse frauduleuse à l’attaquant.

En plus « d’empoisonner » l’historique des dernières transactions, le pirate génère une adresse qui ressemble étrangement aux dernières qui ont été utilisées pour que l’utilisateur ne se doute de rien. C’est donc par cette faute d’inattention qu’un investisseur peut se faire dérober ses cryptos.

Afin de comprendre comment c’est possible, je vais vous expliquer les différentes étapes et son principe de fonctionnement.

Les différentes étapes du déroulement de l’attaque

1. Recherche d’adresses et d’investisseurs actifs

La première étape de l’address poisoning consiste d’abord à rechercher sur le réseau des adresses actives et détenus par des investisseurs classiques comme vous et moi.

Lors de ses recherches, le pirate va utiliser des robots qui vont scanner le réseau et desceller les adresses les plus attrayantes. Plus les adresses sont actives, plus les chances de succès de l’attaque sont en théorie élevée.

Une fois que l’attaquant détient des adresses intéressantes, il va observer la périodicité des échanges de chaque adresse. En théorie aussi, plus la quantité d’échange entre une adresse A et une adresse B est importante, plus les chances sont élevées.

Dès lors, le pirate dispose de 2 choses importantes qui sont :

  • L’adresse A d’un investisseur
  • L’adresse B vers laquelle l’investisseur échange régulièrement des fonds

Avec ces éléments, le pirate peut commencer à entrer en jeu.

2. Génération d’une adresse « vanity »

La seconde étape consiste à générer ce que l’on appelle une adresse « vanity ». Ce type d’adresse est tout simplement une adresse personnalisée avec certains paramètres, comme les premiers caractères, les derniers caractères ou même les deux.

L’attaquant va donc générer une adresse similaire à l’adresse B de l’utilisateur en utilisant des applications comme Vanity-ETH. Comme vous pouvez le voir dans l’exemple suivant, il m’a fallu moins de 2 minutes pour obtenir la clé privée d’une adresse qui se termine par « abcd« .

Génération adresse vanity
Génération de la clé privée avec une adresse « vanity » sur Vanity-ETH

Plus la puissance de calcul de du pirate est élevée, plus c’est rapide pour lui de générer une adresse. Maintenant qu’il dispose d’une adresse avec les 4 premiers et 4 derniers caractères identiques à l’adresse B de la victime, il lui suffit de passer à l’étape de l’empoisonnement de l’adresse.

3. Empoisonnement de l’historique utilisateur

Pour cette troisième étape, le pirate va envoyer une faible quantité de crypto monnaie ou d’un token vers l’adresse de la victime. Dès lors, l’historique sera réactualisé avec la transaction frauduleuse qui arrive en tête de liste.

Historique transaction Metamask

À partir de là, il ne reste plus qu’à attendre que la victime tombe dans le piège en copiant la dernière adresse de l’historique.

Comme vous pouvez le voir sur la capture précédente, seuls les 5 premiers et 4 derniers caractères de l’adresse sont visibles. Par habitude, vous n’allez pas prendre le temps de faire d’autres vérifications et c’est là que le piège se referme.

C’est de cette façon que les crypto-monnaies seront envoyées vers l’adresse du pirate. Mais pas d’inquiétude, ce n’est pas une fatalité et il existe des solutions !

Les solutions pour se protéger contre ces attaques

Malgré le fait que l’address poisoning semble être de plus en plus courante, il est tout de même possible de se protéger avec quelques règles de bonnes pratiques.

D’ailleurs, je tiens également à préciser qu’une autre attaque légèrement similaire vise à corrompre votre presse papier quand vous allez coller l’adresse au moment de l’envoi. Toutes les solutions proposées vont également vous permettre de vous en protéger.

1. Ne pas utiliser les adresses de son l’historique

La première solution et sans doute la plus efficace est bien sûr de ne jamais utiliser son historique pour copier les adresses de destination. Si c’est une adresse que vous utilisez régulièrement, enregistrez la clé publique sur une adresse email ou dans un bloc note.

Ensuite et avant chaque transfert, jetez un coup d’œil sur un explorateur blockchain comme Etherscan pour la blockchain Ethereum. L’objectif est de vérifier si l’adresse vers laquelle vous allez envoyer de la crypto monnaie est bien la votre. Cela ne prend que quelques secondes et peut vous éviter de lourdes pertes.

2. Privilégier l’utilisation d’un portefeuille matériel

L’avantage d’utiliser un portefeuille matériel comme Ledger par exemple, c’est qu’il vous permet d’afficher l’adresse de destination directement depuis l’écran du matériel lors de la signature de la transaction.

Grâce à ça, vous pourrez vérifier l’exactitude de l’adresse et si elle est identique à celle sur l’écran de votre ordinateur ou de votre téléphone.

Une fois l’adresse vérifiée sur votre matériel et conforme, vous pouvez envoyer vos crypto-monnaies en toute tranquillité.

3. Enregistrer ses adresses dans un carnet d’adresses

En troisième solution contre l’address poisoning, je vous suggère d’utiliser les carnets d’adresses qui vont justement vous permettre de mémoriser des adresses sans avoir besoin de les taper à chaque fois.

Que ce soit sur les plateformes d’achat de cryptomonnaies comme Binance ou encore sur MetaMask, ils disposent généralement de cette fonctionnalité. Voici un exemple illustré de la procédure avec le portefeuille MetaMask :

Ajouter contact carnet adresse
Ajouter une adresse publique dans le carnet d’adresse sur MetaMask

Même si c’est une solution très efficace, vous devez quand même vérifier l’adresse de destination avant de cliquer sur envoyer, encore une fois par mesure de sécurité.

4. Faire des transactions de test pour les montants importants

Dès que vous allez faire transiter des montants importants, il est préférable de prendre certaines mesures avant de faire le grand saut.

Cette mesure vise simplement à envoyer un faible montant vers l’adresse de destination afin de s’assurer que la crypto-monnaie arrive correctement sur le portefeuille.

Cette transaction représente une forme de test et permet justement d’éviter les erreurs d’inattention classique, en plus de lutter contre l’address poisoning.

5. Vérifier la présence d’une suite de caractères au milieu de l’adresse

Cette méthode est sans doute l’une des plus redoutable dans le processus de vérification d’une adresse car les chances que les premiers, derniers et caractères du milieu soient les mêmes sont proches de 0.

Pour cela, vérifiez votre adresse en 3 étapes :

  • 4/6 premiers caractères
  • 4/6 derniers caractères
  • une série de caractères facile à retenir au milieu de l’adresse
Vérifier caractères adresse

Même si rien n’est impossible, générer ce type d’adresse prendrait au pirate énormément de temps et la sélection aléatoire au milieu de la chaîne rend encore plus complexe ce vecteur d’attaque.

6. Utilisation des ENS (Ethereum Name Service)

Enfin et si vous en avez la possibilité, les ENS peuvent être une alternative intéressante.

Si vous l’ignorez, les ENS représentent une adresse sous la forme d’un domaine comme par exemple « adresse.eth« . Cela permet de simplifier le format d’une adresse classique afin de le rendre lisible et compréhensible.

Lors de la saisie avant un envoi, il vous suffit simplement de bien vérifier l’ensemble des caractères, un peu comme vous pourriez le faire avant d’envoyer un mail.

Conclusion : l’address poisoning n’est pas une fatalité

Comme vous avez pu le découvrir, l’address poisoning reste une méthode plutôt inoffensive par rapport à d’autres types d’arnaques comme le phishing ou la signature de certaines approbations compromises.

Malgré tout, elles ne doivent pas être prises à la légère et vous devez redoubler de vigilance sur vos méthodes de vérification avant d’envoyer de la crypto monnaie ou des NFT.

N’hésitez pas à mettre en place quelques règles de bonnes pratiques afin que les vérifications deviennent tout simplement une habitude. Bien que ces mesures de sécurité soient redondantes, elles permettent avant tout de protéger vos précieux actifs numériques.

Partager l'article sur les réseaux sociaux

Auteur

Depuis 2017, je ne cesse d'explorer l'univers du Bitcoin, de la blockchain des crypto monnaies, des NFT et plus récemment, celui du Web3. Après avoir fondé Au Coin du Bloc en 2021, je met à disposition mes connaissances et tente de vulgariser les aspects obscurs pour rendre abordable et compréhensible cet univers naissant dans lequel je crois fermement.

Articles similaires