Non-custodial · lecture seule

Attaques EIP-7702 expliquées

La mise à jour Pectra d'Ethereum a permis à une wallet normale d'agir temporairement comme un smart contract. Les drainers en ont immédiatement fait un nouvel exploit à une seule signature que les anciens contrôles d'approbation ne peuvent pas voir.

Scannez votre wallet: gratuit Surveillance 24/7 sur Telegram

Uniquement votre adresse publique. Aucune connexion de wallet. Rien à signer.

Ce que fait réellement EIP-7702

EIP-7702 permet à une wallet ordinaire (une EOA) de signer une « autorisation » qui délègue son exécution au code d'une autre adresse, la transformant en compte de type smart contract tant que la délégation reste active. C'est pensé pour des mises à niveau légitimes d'abstraction de compte, transactions groupées, gas sponsorisé, sans avoir à changer d'adresse.

Comment un drainer abuse de l'autorisation

Une page de phishing habille cette même signature en réclamation, en mise à niveau, ou en étape de « vérification de compte ». En la signant, l'exécution de votre wallet est désormais déléguée au contrat de l'attaquant. Il n'y a pas d'approbation distincte à signer par token, le code délégué peut agir comme votre compte et déplacer tout ce qu'il détient.

Pourquoi les anciennes défenses passent à côté

Les scanners d'approbations surveillent les appels à approve() et aux Permit qui touchent le stockage des allowances de tokens. Une autorisation 7702 ne fait ni l'un ni l'autre, donc révoquer des approbations après coup ne change rien. Une délégation signée avec un chainId 0 est valable sur toutes les chaînes à la fois, la signature typique d'une délégation conçue pour un drain de masse plutôt que pour une seule application légitime.

Comment le Guardian la détecte avant que vous ne signiez

Le Guardian de Veriql décode toute authorizationList présente dans une demande en attente, signale une délégation chainId 0 (valable sur toutes les chaînes) comme signature typique de drainer, et affiche un STOP plein écran avant que vous ne signiez, quel que soit le comportement du code du contrat de destination. Depuis le déploiement de Pectra, la grande majorité des délégations 7702 observées en dehors des applications connues se sont révélées malveillantes ; traitez donc toute demande de délégation inattendue comme un signal d'arrêt.

FAQ

Révoquer mes approbations de tokens annule-t-il une délégation 7702 malveillante ?

Non. Une délégation ne touche pas au stockage des allowances, donc il n'y a rien à révoquer à cet endroit. L'annuler suppose de signer, depuis cette même wallet, une nouvelle autorisation qui ramène la délégation vers rien, pas toujours réalisable si la wallet est totalement compromise, c'est pourquoi déplacer les actifs restants vers une wallet neuve reste le réflexe le plus sûr.

EIP-7702 est-il dangereux en lui-même ?

Non: c'est une mise à niveau légitime d'Ethereum. Le risque est identique à celui de tout autre schéma de drain : se faire piéger pour signer quelque chose au profit du contrat de quelqu'un d'autre. La signature est simplement plus récente, donc peu d'outils la surveillaient au départ.

À lire aussi