Un attaquant a utilisé une seule fonction ERC-20 pour détourner les permissions de délégué de LayerZero et frapper 329 billions de SAND non adossés sur Base, mais le drain réel des réserves ne s'est élevé qu'à 675 000 $, exposant à la fois la fragilité et les garde-fous cachés de l'architecture des jetons inter-chaînes.
Résumé
- Un attaquant a exploité la fonction approveAndCall sur le contrat de jeton fongible omni-chaîne SAND de The Sandbox sur Base, détournant les permissions de délégué de LayerZero et frappant 329,24 billions de SAND non adossés à travers 703 événements sur cinq heures les 21 et 22 août 2026.
- La société de sécurité blockchain Blockaid a signalé 49 milliards de dollars de SAND à valeur faciale frappés à travers plus de 400 transactions, tandis que PeckShield a compté 14,9 milliards de SAND dirigés vers deux adresses contrôlées par l'attaquant.
- L'extraction financière réelle était bien plus faible : environ 14,75 millions de SAND drainés de l'adaptateur OFT Ethereum en moins de 60 secondes, produisant environ 80 ETH (environ 675 000 $ au moment des transactions).
- The Sandbox a désactivé le pontage sur Base et BNB Smart Chain, a supprimé les paramètres de pair LayerZero via multisig, et a confirmé que SAND sur Ethereum et Polygon n'était pas affecté ; les bourses coréennes Upbit et Bithumb ont suspendu les dépôts et retraits, et Coinbase a retiré les contrats à terme SAND de la cote.
- L'incident marque la troisième exploitation majeure de pont liée à LayerZero en cinq mois, après l'attaque de Kelp DAO de 292 millions de dollars en avril et la violation de Stake DAO en mai, accélérant une vague de migration de 15 milliards de dollars de LayerZero vers Chainlink CCIP.
Dans la nuit du 21 août 2026, une adresse inactive depuis 313 jours a acheminé une charge utile conçue via le contrat de jeton SAND de The Sandbox sur Base. En cinq heures, les explorateurs de blockchain ont montré des billions de jetons SAND fraîchement frappés se répandant à travers 173 portefeuilles. La valeur faciale, calculée en multipliant les soldes gonflés par le prix du marché en direct, a brièvement dépassé 49 milliards de dollars. Ce chiffre dépassait la capitalisation boursière de tous les projets cryptographiques sauf quelques-uns. Il n'avait également presque aucun rapport avec l'argent réellement pris par l'attaquant.
L'écart entre le chiffre principal et l'extraction réelle (675 000 $, à peu près le prix d'une maison modeste) révèle quelque chose d'important sur la façon dont les systèmes de jetons inter-chaînes fonctionnent et échouent. Il révèle également comment les rapports de sécurité cryptographiques peuvent amplifier la panique à travers des nombres techniquement exacts mais pratiquement dénués de sens. Comprendre pourquoi l'attaquant a pu frapper un nombre supérieur au produit intérieur brut de plusieurs petits pays, tout en repartant avec une fraction d'une fraction de cette somme, nécessite d'examiner l'architecture qui a rendu l'exploitation possible et les contraintes qui ont limité ses dégâts.
The Sandbox est l'un des noms les plus reconnaissables du jeu Web3, avec son jeton SAND alimentant un monde virtuel où les utilisateurs créent, possèdent et monétisent des expériences de jeu. Le projet étendait sa présence inter-chaînes à Base et BNB Smart Chain via le cadre OFT de LayerZero lorsque la vulnérabilité a été exploitée. Cette expansion, destinée à améliorer l'accessibilité et à réduire les coûts de transaction pour les utilisateurs, est devenue le vecteur de la plus grande exploitation de pont en valeur nominale de l'histoire de la cryptographie.
Ce qui s'est passé dans la nuit du 21 août
Le premier signal on-chain est apparu à 23:42:05 UTC le 21 août. Un compte détenu en externe, plus tard étiqueté par PeckShield comme adresse contrôlée par l'attaquant 0x638C, a commencé à soumettre des transactions au contrat OFT SAND déployé sur Base. Chaque transaction invoquait la fonction approveAndCall, une extension standard ERC-20 conçue comme un raccourci d'expérience utilisateur qui combine une approbation de jeton et un appel de contrat ultérieur en une seule transaction.
Dans ce cas, l'appel ultérieur était tout sauf routinier. La charge utile conçue acheminée via le contrat de jeton dans le point de terminaison LayerZero, accordant au contrat auxiliaire de l'attaquant le statut effectif de délégué avec des droits administratifs sur la configuration du point de terminaison. Une fois ce statut de délégué sécurisé, l'attaquant pouvait frapper SAND sur Base sans aucun verrouillage correspondant de jetons sur le côté Ethereum.
Au cours des cinq heures suivantes, 703 événements de frappe distincts ont distribué des SAND nouvellement créés à 173 adresses. La frappe s'est arrêtée organiquement à 04:45:21 UTC le 22 août. Vingt-quatre minutes plus tard, à 05:09:19 UTC, le portefeuille multisig de The Sandbox a remis à zéro les paramètres de pairs de confiance pour Base et BNB Smart Chain, rompant le lien inter-chaînes que l'attaquant avait exploité.
Comment approveAndCall est devenu un vecteur d'attaque
La fonction approveAndCall existe dans de nombreuses implémentations de jetons ERC-20. Elle a été conçue à l'origine pour résoudre un problème d'utilisabilité réel : les transferts ERC-20 standard nécessitent deux transactions distinctes (approve, puis transferFrom), ce qui coûte aux utilisateurs du gaz et du temps supplémentaires. En regroupant les deux étapes, approveAndCall permet à un utilisateur d'approuver un dépensier et de déclencher une action en une seule transaction.
La vulnérabilité dans l'implémentation de SAND ne résidait pas dans le mécanisme d'approbation lui-même, mais dans ce que la fonction permettait comme partie « appel ». Lorsque le contrat OFT de SAND sur Base traitait une transaction approveAndCall, il transmettait les calldata intégrés au contrat cible spécifié par l'appelant. Si cette cible était le point de terminaison LayerZero, l'appel arrivait avec le contrat de jeton comme msg.sender, et non l'appelant externe d'origine.
Cette distinction est importante car le point de terminaison de LayerZero vérifie les autorisations en fonction de msg.sender. Le contrat OFT de SAND détenait l'autorité déléguée sur sa propre configuration de point de terminaison. En passant par approveAndCall, l'attaquant a effectivement emprunté cette autorité. Le résultat a été une escalade de privilèges : un compte externe non autorisé a obtenu la capacité de reconfigurer le point de terminaison et d'autoriser une frappe arbitraire.
Les chercheurs en sécurité de Blockaid ont décrit la cause racine comme « la prise de contrôle des permissions déléguées de LayerZero via une fonction approveAndCall ». Ce n'était pas une faille dans le protocole LayerZero lui-même, mais une défaillance de configuration au niveau de l'application dans la manière dont le contrat OFT de The Sandbox interagissait avec le point de terminaison.
Les 49 milliards de dollars qui n'ont jamais existé
Le chiffre en valeur nominale qui a circulé dans les heures suivant l'exploit mérite un examen attentif. Les explorateurs de blockchain calculent les valeurs de jetons en multipliant les soldes par le dernier prix négocié. Lorsqu'un attaquant frappe 329,24 billions de SAND et que le jeton se négocie à des fractions de centime, le nombre résultant est mathématiquement énorme mais économiquement creux.
SAND a une offre maximale légitime de 3 milliards de jetons sur Ethereum. Les 329 billions de jetons frappés par l'attaquant dépassaient cette offre d'un facteur d'environ 110 000. Aucun marché sur aucune bourse, centralisée ou décentralisée, ne pourrait absorber ne serait-ce qu'une infime fraction de ce volume au prix indiqué. Dès qu'une pression de vente significative se matérialiserait, le prix sur les plateformes concernées s'effondrerait vers zéro.
L'extraction réelle a suivi un chemin différent, beaucoup plus contraint. Dans les 60 premières secondes de l'exploit, 14,75 millions de SAND ont été retirés de l'adaptateur OFT Ethereum, le contrat qui détient les SAND verrouillés soutenant les transferts inter-chaînes. Ce retrait s'est produit en 15 transactions, avec 14 095 483 SAND acheminés vers un seul compte détenu en externe en six transactions sur 24 secondes. Le produit total converti en environ 79,74 ETH, valant environ 675 000 $.
The Sandbox a évalué l'impact à « moins de 0,01 % de l'offre totale de jetons SAND ». Bien que les critiques aient noté que le cadrage en pourcentage minimisait le montant absolu en dollars, le calcul est simple : 14,75 millions de jetons divisés par 3 milliards équivaut à 0,49 % de l'offre, avec la valeur réellement extraite représentant une petite fraction de la capitalisation boursière du projet.
L'architecture de pontage qui a limité les dégâts
Comprendre pourquoi l'attaquant n'a pas pu convertir des billions de jetons fantômes en milliards de dollars réels nécessite d'examiner le modèle d'adaptateur OFT de LayerZero et les contraintes structurelles qui ont transformé un exploit théoriquement catastrophique en un incident contenu.
Lorsqu'un projet comme The Sandbox se déploie sur plusieurs chaînes en utilisant le framework OFT de LayerZero, les jetons d'origine restent sur la chaîne d'origine (dans ce cas, Ethereum). L'adaptateur OFT côté Ethereum verrouille les jetons SAND authentiques lorsqu'un utilisateur les transfère vers l'extérieur. Sur la chaîne de destination, le contrat OFT frappe une quantité équivalente. Lorsqu'un utilisateur revient, la chaîne de destination brûle les jetons et l'adaptateur libère les originaux verrouillés.
La contrainte critique est que l'adaptateur Ethereum ne détient que le nombre de jetons que les utilisateurs ont précédemment transférés. Dans la nuit du 21 août, l'adaptateur détenait une quantité limitée de SAND. Une fois que l'attaquant a épuisé ces réserves, aucun SAND adossé supplémentaire n'existait à extraire, quel que soit le nombre de jetons non adossés que l'attaquant continuait à frapper sur Base.
Cette conception signifie que le rayon d'explosion de l'exploit était structurellement limité par le solde de l'adaptateur, et non par la capacité de frappe de l'attaquant. Les milliards de jetons sur Base sont devenus ce qu'un analyste a appelé des « fantômes comptables », visibles sur les explorateurs mais échangeables contre rien. Le solde fabriqué d'un attaquant ne devient la perte de quelqu'un d'autre que lorsqu'il atteint un pool contenant du SAND authentique, de l'ETH, des stablecoins ou d'autres actifs avec une liquidité réelle. La plupart des réserves légitimes ayant déjà été épuisées dans la première minute, les jetons frappés restants n'avaient nulle part où aller.
Il existe un canal secondaire de dommages à noter. Tous les pools de liquidité de bourses décentralisées sur Base qui détenaient du SAND authentique apparié à de l'ETH ou des stablecoins étaient également vulnérables. Si l'attaquant échangeait du SAND non adossé dans ces pools avant que les fournisseurs de liquidité ne puissent retirer, les LP absorbaient des pertes au-delà du drain de l'adaptateur Ethereum. La décision de The Sandbox de prendre un instantané avant l'incident et de compenser les LP éligibles suggère que ces dommages secondaires n'étaient pas négligeables, même si l'équipe n'a pas divulgué de chiffres exacts.
La réponse de The Sandbox a renforcé le confinement principal. En mettant à zéro les pairs de confiance via multisig, l'équipe a coupé le canal de messagerie inter-chaînes. Le SAND sur Base et BNB Smart Chain est devenu isolé, incapable de revenir sur Ethereum. L'équipe a ensuite conseillé aux utilisateurs de ne pas acheter, vendre ou échanger du SAND sur l'une ou l'autre des chaînes affectées. Le plafond d'offre maximale côté Ethereum de 3 milliards de SAND est resté intact, et le déploiement sur Polygon n'a pas été affecté.
Un schéma à travers trois incidents en cinq mois
L'exploit de The Sandbox ne s'est pas produit de manière isolée. C'était le troisième incident de pont lié à LayerZero en cinq mois, un schéma qui a remodelé la façon dont l'industrie évalue le risque d'infrastructure inter-chaînes.
Le 18 avril 2026, des attaquants ont drainé 116 500 rsETH d'une valeur d'environ 292 millions de dollars d'un pont propulsé par LayerZero exploité par Kelp DAO. Cette attaque a été attribuée à une campagne d'ingénierie sociale qui a compromis un développeur de LayerZero Labs le 6 mars, donnant à l'attaquant accès à l'environnement cloud RPC de l'entreprise. Le pont Kelp utilisait une configuration DVN (réseau de vérificateurs décentralisés) 1-sur-1, ce qui signifie qu'un seul vérificateur compromis pouvait autoriser des messages inter-chaînes frauduleux.
En mai, Stake DAO a subi une violation distincte lorsqu'une clé de déploiement compromise a réinitialisé un paramètre de pair de confiance, conduisant à 5,4 billions de vsdCRV frappés pour environ 91 000 $ de valeur extractible.
L'incident de The Sandbox a suivi une logique similaire : une mauvaise configuration au niveau de l'application des autorisations inter-chaînes a créé une ouverture pour une frappe non autorisée. Les mécanismes différaient (approveAndCall contre ingénierie sociale contre compromission de clé), mais la cible était la même : l'autorité déléguée ou de pair qui contrôle qui peut déclencher des opérations de jetons inter-chaînes.
La migration de 15 milliards de dollars qui a suivi
L'effet cumulé de trois incidents liés à LayerZero en cinq mois a déclenché un changement structurel dans la façon dont les protocoles choisissent leur infrastructure inter-chaînes. En août 2026, les migrations annoncées publiquement de LayerZero vers le protocole d'interopérabilité inter-chaînes de Chainlink totalisaient environ 15 milliards de dollars de valeur sécurisée.
BitGo a mené la vague de migration en déplaçant 7,4 milliards de dollars en WBTC. Mantle a transféré son Super Portal de 2,5 milliards de dollars. Lombard a transféré plus d'un milliard de dollars d'actifs adossés au bitcoin. Solv Protocol a déplacé 700 millions de dollars de réserves de bitcoin tokenisées. Kraken a remplacé LayerZero par Chainlink CCIP pour son actif enveloppé kBTC. Le 18 août, quelques jours seulement avant l'exploit de Sandbox, la Wyoming Stable Token Commission a migré son Frontier Stable Token vers Chainlink CCIP sur huit chaînes à la suite d'une revue de sécurité au niveau de l'État.
LayerZero Labs a reconnu l'incident précédent de Kelp, la société déclarant publiquement qu'elle avait « fait une erreur » dans la configuration DVN utilisée par Kelp. L'exploit de Sandbox ajoute un nouveau vecteur à la conversation : même lorsque le protocole de messagerie sous-jacent fonctionne comme prévu, les intégrations au niveau de l'application peuvent créer des failles exploitables.
Le CCIP de Chainlink utilise un modèle de vérification différent qui repose sur un réseau d'oracles décentralisé et un réseau de gestion des risques distinct qui valide indépendamment chaque transaction inter-chaînes. Le réseau de gestion des risques agit comme un chien de garde indépendant : même si le réseau d'oracles principal est compromis, la couche secondaire peut arrêter les messages suspects avant leur exécution. Cette approche à deux couches répond directement au problème de point de défaillance unique qui a permis l'exploit de Kelp DAO, où une configuration DVN 1-sur-1 signifiait qu'un seul vérificateur compromis suffisait à autoriser une fraude.
Que cette architecture se révèle plus résiliente au fil du temps reste une question ouverte. Le modèle de Chainlink introduit ses propres hypothèses de confiance, et aucun système inter-chaînes n'a prouvé être immunisé contre des attaques sophistiquées sur une période de plusieurs années. Mais le marché a voté avec son capital : 15 milliards de dollars d'annonces de migration représentent un niveau de changement de confiance institutionnelle difficile à inverser. Lorsqu'un gouvernement d'État (Wyoming) et des dépositaires majeurs (BitGo, Kraken) parviennent indépendamment à la même conclusion sur le risque d'infrastructure, le signal a du poids au-delà de tout incident unique.
Ce que le marché a intégré
La réaction du marché à l'exploit de Sandbox a contredit ce qu'un observateur occasionnel pourrait attendre. Malgré le titre de 49 milliards de dollars, SAND a augmenté de 4,76 % à 0,0476 $ dans les 24 heures suivant l'incident, avec un volume de transactions en hausse de plus de 400 %.
Plusieurs facteurs peuvent expliquer ce mouvement de prix contre-intuitif. Premièrement, le confinement rapide et la communication transparente de l'équipe de The Sandbox ont rassuré les détenteurs sur le fait que l'offre côté Ethereum était intacte. Deuxièmement, la suspension des dépôts et retraits par les bourses coréennes en vertu de la loi sud-coréenne sur la protection des actifs virtuels a signalé le sérieux des régulateurs à protéger les traders. Troisièmement, certains acteurs du marché ont peut-être interprété la faible extraction réelle comme la preuve que le modèle d'adaptateur OFT fonctionnait comme un filet de sécurité structurel, même si les autorisations au niveau de l'application ont échoué.
Coinbase a retiré de la cote les contrats perpétuels SAND, une mesure de précaution qui a réduit l'exposition au levier. The Sandbox a annoncé qu'il prendrait un instantané avant l'incident et indemniserait les fournisseurs de liquidité éligibles sur Base et BNB Smart Chain, bien que le calendrier et le mécanisme d'indemnisation n'aient pas été divulgués immédiatement.
La résilience des prix ne doit pas être confondue avec une absolution. L'exploit a exposé une vulnérabilité de configuration qui existait depuis au moins 313 jours, la période de dormance du portefeuille de l'attaquant, qui avait été prépositionné le 13 octobre 2025. Que l'un des noms les plus reconnaissables du jeu Web3 ait porté cette exposition sans détection soulève des questions sur la couverture d'audit pour les déploiements inter-chaînes. La dormance prolongée du portefeuille suggère également que l'attaquant a soit découvert la vulnérabilité des mois avant d'agir, soit a acquis le portefeuille de quelqu'un qui l'avait découverte.
DefiLlama a enregistré 17 exploits distincts rien qu'en août 2026, les ponts réapparaissant comme le point faible récurrent. Le deuxième trimestre 2026 a été décrit comme « le trimestre le plus piraté de l'histoire de la DeFi », avec 99 exploits drainant 746 millions de dollars. Les pertes cumulées de la DeFi pour l'année ont dépassé 840 millions de dollars à la fin du mois de mai, et l'incident de Sandbox fait grimper le total en cours encore plus haut. La question à laquelle l'industrie est confrontée n'est plus de savoir si les ponts peuvent être sécurisés, mais si la génération actuelle d'architectures de ponts devrait être digne de confiance avec des capitaux importants.
Ce qu'il faut surveiller
Publication du post-mortem : Sandbox a promis un post-mortem complet. Sa profondeur, en particulier concernant la manière dont le chemin approveAndCall a été manqué lors des audits précédents, indiquera à quel point le projet prend au sérieux l'écart de configuration.
Indemnisation des fournisseurs de liquidité : Le plan d'indemnisation basé sur un instantané nécessite un calendrier et une source de jetons. Surveillez si les LP affectés reçoivent une restitution complète ou une réduction.
Atténuations au niveau du protocole LayerZero : Que LayerZero introduise des garde-fous pour empêcher le détournement de délégués via des rappels de contrat de jetons indiquera si le protocole considère cela comme un risque systémique ou une erreur de configuration ponctuelle.
Annonces de migration supplémentaires : Si d'autres projets accélèrent leurs départs de LayerZero après ce troisième incident, la vague de migration pourrait remodeler le marché de l'infrastructure inter-chaînes avant la fin de l'année.
Réponse réglementaire en Corée du Sud : Upbit et Bithumb ont agi en vertu de la loi sur la protection des actifs virtuels des utilisateurs. Que les régulateurs coréens poursuivent des actions supplémentaires contre Sandbox ou LayerZero pourrait établir un précédent pour la manière dont les exploits de ponts sont traités dans le cadre des mécanismes de protection des consommateurs.
Qu'est-ce que la fonction approveAndCall ?
La fonction approveAndCall est une extension ERC-20 qui permet à un utilisateur d'approuver un dépensier de jetons et d'exécuter un appel de contrat ultérieur en une seule transaction. Elle a été conçue pour économiser du gaz et simplifier les interactions en plusieurs étapes. Dans l'exploit de Sandbox, l'attaquant a utilisé cette fonction pour acheminer une charge utile conçue via le contrat de jeton SAND vers le point de terminaison LayerZero, empruntant effectivement l'autorité déléguée du contrat de jeton sur la configuration du point de terminaison.
Combien d'argent l'attaquant a-t-il réellement volé ?
L'attaquant a extrait environ 14,75 millions de SAND de l'adaptateur OFT Ethereum, convertissant les jetons en environ 79,74 ETH, d'une valeur d'environ 675 000 $ au moment des transactions. Bien que la valeur nominale des jetons frappés ait atteint 49 milliards de dollars, ce chiffre est un artefact arithmétique qui n'aurait jamais pu être réalisé en valeur réelle.
Les jetons SAND sur Ethereum et Polygon ont-ils été affectés ?
Non. L'exploit ciblait le contrat SAND OFT sur Base et BNB Smart Chain. Le contrat d'adaptateur côté Ethereum et le déploiement Polygon n'ont pas été compromis. Le plafond d'approvisionnement maximal de 3 milliards de SAND sur Ethereum reste intact.
Pourquoi l'attaquant a-t-il frappé des milliards de jetons s'il ne pouvait extraire que 675 000 $ ?
La frappe a été automatisée sur 703 événements et 173 portefeuilles sur cinq heures. L'attaquant visait probablement à drainer autant de valeur adossée que possible de l'adaptateur Ethereum, mais le solde de l'adaptateur était limité. La frappe excessive au-delà de ce que détenait l'adaptateur a produit des jetons non adossés sans voie de rachat.
Est-ce une faille dans le protocole de LayerZero ?
Les chercheurs en sécurité ont décrit la vulnérabilité comme une défaillance de configuration au niveau de l'application, et non comme une faille dans le protocole LayerZero lui-même. Le problème était spécifique à la manière dont le contrat OFT de The Sandbox sur Base gérait les interactions approveAndCall avec le point de terminaison LayerZero. Cependant, le fait que trois ponts intégrés à LayerZero aient été exploités en cinq mois a intensifié l'examen du modèle de sécurité global du protocole.
Qu'ont fait les bourses coréennes en réponse ?
Upbit et Bithumb ont suspendu les dépôts et retraits de SAND, invoquant des incidents de sécurité suspects en vertu de la loi sud-coréenne sur la protection des utilisateurs d'actifs virtuels. Coinbase a séparément retiré de la cote les contrats à terme perpétuels SAND.
Les fournisseurs de liquidité affectés seront-ils indemnisés ?
The Sandbox a annoncé son intention d'indemniser les fournisseurs de liquidité éligibles sur la base d'un instantané pré-incident des soldes sur Base et BNB Smart Chain. Le calendrier de paiement et la source des jetons n'avaient pas été divulgués au 23 août 2026.
Comment cela se compare-t-il à d'autres exploits de ponts ?
En valeur nominale, le chiffre de 49 milliards de dollars ferait de cet exploit le plus grand exploit de pont de l'histoire de la crypto. En extraction réelle, la perte de 675 000 $ se classe parmi les plus petites. La différence clé est que les exploits précédents comme Ronin (625 millions de dollars) et Wormhole (326 millions de dollars) disposaient d'une liquidité de pont suffisante pour que les attaquants drainent des actifs adossés à grande échelle, tandis que l'adaptateur Sandbox ne détenait qu'une fraction de l'offre totale de SAND, limitant structurellement les pertes.






