Points clés
Un pont blockchain relie deux blockchains distinctes afin que les actifs et les données puissent circuler entre elles. Les ponts inter-chaînes détiennent de grandes quantités des fonds des utilisateurs, ce qui en fait une cible concentrée pour les attaquants.
Les vulnérabilités de pont les plus courantes incluent une validation on-chain faible, une validation off-chain faible, une mauvaise gestion des tokens natifs, une mauvaise configuration et la compromission des clés de validateur ou du dépositaire (custodian).
Les piratages de ponts ont causé des pertes de plusieurs milliards de dollars. Parmi les exploits marquants, citons Wormhole (325 M$), Ronin (625 M$) et Nomad (190 M$).
Des tests approfondis avant déploiement sur tous les vecteurs d’attaque connus, combinés à des audits de sécurité réalisés par des tiers, constituent le moyen le plus efficace de réduire le risque de sécurité d’un pont. Même un code bien audité peut être contourné si les clés de validateurs sont compromises.
Introduction
Un pont blockchain est un protocole qui permet à deux blockchains de communiquer et d’échanger des actifs. Si vous détenez du bitcoin mais que vous souhaitez participer à des activités sur le réseau Ethereum, un pont inter-chaînes vous permet de le faire sans vendre votre bitcoin.
Les ponts jouent un rôle central dans l’écosystème multi-chaînes. Comme ils détiennent de grandes quantités des fonds des utilisateurs et reposent sur des composants on-chain et off-chain complexes, ils présentent une large surface d’attaque. Cette combinaison fait des ponts l’une des zones les plus fréquemment ciblées dans l’espace blockchain.
Les attaques contre les ponts ont entraîné des pertes dépassant 2 milliards de dollars rien qu’en 2022. Parmi les exploits marquants de cette année : Wormhole (environ 325 millions de dollars en février 2022, causé par une faille de validation on-chain faible), Ronin Bridge (environ 625 millions de dollars en mars 2022, causé par la compromission de cinq des neuf clés de validateurs) et Nomad (environ 190 millions de dollars en août 2022, causé par une mauvaise configuration qui a permis à quiconque de soumettre un message frauduleux).
Les attaques ont continué par la suite, y compris une intrusion du protocole Orbit Bridge en 2024 ayant entraîné environ 82 millions de dollars de pertes. Comprendre pourquoi les ponts sont vulnérables est essentiel pour saisir comment l’industrie peut améliorer sa sécurité.
Pourquoi la sécurité des ponts est-elle essentielle ?
Les ponts conservent généralement les tokens que les utilisateurs souhaitent transférer d’une chaîne à une autre. Comme les transferts inter-chaînes s’accumulent avec le temps, un contrat de pont peut détenir une quantité substantielle des fonds des utilisateurs à un moment donné. Cela en fait une cible à forte valeur.
Les ponts présentent également une grande surface d’attaque. Ils impliquent à la fois des smart contracts sur la blockchain et une infrastructure backend off-chain, et les deux doivent coordonner correctement pour que le système soit sécurisé. Toute faille dans l’interaction entre ces composants peut créer une opportunité d’exploitation.
En plus des vulnérabilités au niveau du code, les ponts qui s’appuient sur un ensemble de validateurs ou de dépositaires pour valider les messages entre chaînes sont exposés à une catégorie de risque supplémentaire : si un attaquant compromet suffisamment de clés de validateurs, il peut autoriser des retraits frauduleux quelle que soit la qualité de rédaction des smart contracts sous-jacents. L’exploit du pont Ronin s’inscrit dans cette catégorie, montrant que la gestion des clés de validateurs est aussi critique que la sécurité des contrats.
Les acteurs malveillants sont fortement motivés à rechercher des failles dans chacune de ces zones, compte tenu des gains potentiels en cas de brèche réussie.
Vulnérabilités courantes de sécurité des ponts
Les vulnérabilités des ponts se répartissent en plusieurs catégories principales. Chacune nécessite sa propre approche de test et sa stratégie d’atténuation.
Validation on-chain faible
Certains ponts s’appuient sur des smart contracts pour valider les messages et vérifier directement les dépôts sur la blockchain. Lorsqu’un utilisateur dépose des fonds, un relais (relayer) ou un ensemble de validateurs off-chain observe le dépôt et génère une preuve signée. Le contrat on-chain valide ensuite cette preuve afin d’autoriser un retrait sur la chaîne destinataire.
Si la logique de validation on-chain comporte une faille, un attaquant peut falsifier des preuves qui passent le contrôle de vérification. Par exemple, lors de l’exploit Wormhole, l’attaquant a pu générer une signature valide pour un dépôt qui n’a jamais eu lieu, en frappant environ 120 000 ETH tokenisés (wrapped ETH) sur Solana sans aucun dépôt correspondant sur Ethereum.
Les ponts qui gèrent des tokens tokenisés (wrapped) y sont particulièrement exposés. Si la transaction qui émet ces tokens n’est pas correctement validée, un attaquant pourrait les rediriger vers une adresse non prévue. Ce risque peut être aggravé si les utilisateurs ont accordé au contrat de pont des approbations de tokens illimitées, une pratique courante pour réduire les frais de gas.
Validation off-chain faible
Certains systèmes de ponts s’appuient sur un serveur backend off-chain pour vérifier si une transaction de dépôt est légitime avant d’autoriser un retrait. Un attaquant capable de tromper ce serveur peut retirer des fonds sans jamais effectuer de dépôt.
Une faiblesse courante ici est la vérification incomplète du contrat qui émet l’événement. Le serveur backend doit confirmer non seulement qu’un événement de dépôt a été émis, mais aussi qu’il l’a été à partir de la bonne adresse de contrat. Si seule la structure de l’événement est vérifiée et non l’adresse source, un attaquant peut déployer un contrat factice qui émet un événement de dépôt identiquement structuré, trompant le serveur et l’amenant à autoriser un retrait frauduleux.
Mauvaise gestion des tokens natifs
Sur un réseau comme Ethereum, le token natif (ETH) et les tokens utilitaires (ERC-20) sont déposés dans un pont via des mécanismes différents. Les tokens natifs sont envoyés directement avec la transaction ; les tokens ERC-20 nécessitent une étape d’approbation et de transfert distincte.
Lorsque les deux types peuvent être déposés via la même fonction, il existe un risque que la logique qui traite les tokens natifs et ERC-20 comme interchangeables crée des cas limites exploitables par des attaquants. Par exemple, si une adresse nulle (représentant le token natif) contourne la vérification de liste blanche, un attaquant peut manipuler le flux de transaction de manière à enregistrer un dépôt sans transférer réellement de tokens.
Les ponts peuvent résoudre ce problème en utilisant des fonctions distinctes pour les dépôts natifs et ERC-20, ou en mettant en place une liste blanche robuste qui gère explicitement le cas du token natif.
Mauvaise configuration
Les rôles privilégiés au sein d’un protocole de pont contrôlent des fonctions critiques telles que la mise en liste blanche des tokens, l’affectation des signataires et les mises à jour de configuration. Une mauvaise configuration à l’un de ces niveaux peut avoir de graves conséquences.
Dans l’exploit du pont Nomad, une mise à niveau du protocole a introduit une mauvaise configuration qui permettait à n’importe qui de soumettre des messages de retrait frauduleux et d’être traité comme un relais (relayer) légitime. Comme le système acceptait n’importe quel message provenant de n’importe quel expéditeur comme pré-vérifié, les attaquants pouvaient vider le pont en copiant une transaction valide et en remplaçant l’adresse du destinataire, sans aucune exploitation technique requise.
Ce type de vulnérabilité met en évidence la nécessité de traiter les changements de configuration avec le même niveau de rigueur que les changements de code, y compris des tests approfondis avant et après toute mise à niveau.
Compromission des clés de validateurs et de dépositaire (custodian)
De nombreux ponts s’appuient sur un ensemble de validateurs ou de dépositaire (custodians) multisignatures pour approuver des messages entre chaînes. Si un attaquant compromet suffisamment de clés pour atteindre le seuil de signature, il peut autoriser des retraits frauduleux, indépendamment de la sécurité des contrats intelligents sous-jacents.
L’attaque du pont Ronin reste le plus important exploit de pont de toute l’histoire de la crypto. L’attaquant a obtenu l’accès à cinq des neuf clés privées de validateurs, de quoi signer deux retraits frauduleux totalisant environ 625 millions de dollars. La compromission n’a pas été détectée pendant six jours, car le pont ne disposait d’aucun système de surveillance ou d’alerte automatisé pour les sorties importantes.
Les mesures d’atténuation pour cette catégorie incluent la répartition des clés de validateurs entre des parties indépendantes, sans infrastructure partagée, la mise en place d’une surveillance automatisée des retraits avec des schémas inhabituels et l’utilisation de modules de sécurité matériels (HSM) pour protéger les clés de signature. La limitation du débit (rate limiting) sur les retraits peut aussi limiter les dégâts même si des clés sont compromises.
Comment améliorer la sécurité des ponts
Les types de vulnérabilités décrits ci-dessus partagent un thème commun : chacun résulte d’une faille dans la logique, la configuration ou la gestion des clés qui contrôle la manière dont le pont traite les messages et les fonds.
Une pratique de sécurité efficace comble ces failles grâce à des tests rigoureux avant le déploiement, couvrant chaque vecteur d’attaque connu, y compris les preuves falsifiées, les faux événements de dépôt, les cas limites des tokens natifs, les hypothèses liées à la configuration et la gestion des clés de validateurs.
Les audits de sécurité de contrats intelligents par des tiers apportent une couche supplémentaire de relecture, en faisant intervenir une expertise externe pour identifier des problèmes que les équipes internes pourraient manquer. Cependant, les audits seuls ne suffisent pas : l’exploit Ronin s’est produit sur un code audité, soulignant que la sécurité des clés de validateurs et les procédures opérationnelles peuvent contourner même les revues de code les plus approfondies.
Limiter le débit des retraits et imposer des exigences de multi-signature pour les actions privilégiées peut également réduire l’impact d’un exploit réussi en limitant la quantité qu’un attaquant peut extraire sur une courte fenêtre. Une surveillance et des alertes automatisées pour les activités inhabituelles peuvent réduire le délai de détection, ce qui a été un facteur critique dans le cas du pont Ronin.
Aucune approche unique n’élimine tout risque. Les ponts les plus résilients combinent des tests rigoureux, des audits externes, une gestion sécurisée des clés et des procédures opérationnelles soigneuses dans une posture de sécurité en couches.
FAQ
Qu’est-ce qui fait des ponts blockchain une cible pour les attaquants ?
Les ponts détiennent de grandes quantités des fonds des utilisateurs dans des contrats intelligents et reposent sur le bon fonctionnement à la fois de composants on-chain et off-chain. La combinaison d’une grande valeur et d’une surface d’attaque étendue en fait une cible attrayante. Toute faille dans la logique de validation, la configuration ou la gestion des clés de validateurs peut potentiellement être exploitée pour retirer des fonds sans dépôt légitime.
Quel a été le plus grand piratage de pont blockchain ?
L’exploit du pont Ronin en mars 2022 a entraîné environ 625 millions de dollars de pertes, ce qui en fait le plus grand piratage de pont. L’attaquant a obtenu l’accès à cinq des neuf clés privées de validateurs, autorisant des retraits frauduleux.
Qu’est-ce qu’une validation off-chain faible dans la sécurité des ponts ?
Une validation off-chain faible signifie qu’un serveur backend de pont ne parvient pas à vérifier entièrement une transaction de dépôt avant d’autoriser un retrait. Si le serveur vérifie uniquement la structure de l’événement et non l’adresse à l’origine de l’événement, un attaquant peut déployer un contrat factice qui imite un événement de dépôt légitime et contourner la vérification.
Comment des approbations de tokens illimitées augmentent-elles le risque pour les ponts ?
De nombreux ponts demandent des approbations illimitées aux tokens afin de réduire les frais de transaction. Si le contrat du pont présente une vulnérabilité de validation, un attaquant peut exploiter cette approbation pour transférer des tokens depuis d’autres utilisateurs vers lui-même, puisque le contrat a reçu un accès illimité à ces portefeuilles.
Quelle est la meilleure façon de réduire le risque de sécurité d’un pont ?
L’approche la plus efficace combine des tests approfondis avant déploiement contre tous les vecteurs d’attaque connus avec des audits de sécurité réalisés par des tiers. Tout aussi important : des pratiques de gestion sécurisée des clés pour les ensembles de validateurs, une limitation du débit des retraits, des exigences de multi-signature pour les actions privilégiées, et une surveillance automatisée des activités inhabituelles. Aucune mesure unique n’élimine tous les risques ; une posture de sécurité en couches est essentielle.
Dernières réflexions
Les ponts blockchain sont un élément fondamental de l’écosystème multi-chaînes, permettant aux actifs de circuler entre des réseaux distincts. Leur valeur en fait aussi une cible persistante pour les attaquants. Les principales catégories de vulnérabilité des ponts — validation on-chain faible, validation off-chain faible, mauvaise gestion des tokens natifs, mauvaise configuration et compromission des clés de validateurs — nécessitent chacune des tests ciblés et une conception soignée pour être traitées.
L’historique des exploits de ponts montre clairement que la qualité du code, à elle seule, ne suffit pas. Le plus grand piratage de pont de toute l’histoire de la crypto (Ronin Bridge) a exploité des clés de validateurs plutôt que des bugs de contrats intelligents. Les développeurs qui construisent ou auditenent l’infrastructure de pont devraient considérer chaque composant — code on-chain, logique off-chain, gestion des clés et procédures opérationnelles — comme une surface d’attaque potentielle.
Pour aller plus loin
Qu’est-ce qu’un pont blockchain ?
Qu’est-ce que l’interopérabilité entre chaînes ?
Que sont les smart contracts (contrats intelligents) et comment fonctionnent-ils ?
Comment repérer les arnaques dans la finance décentralisée (DeFi)
Qu’est-ce que Ethereum et comment fonctionne-t-il ?
Avertissement : ce contenu vous est fourni « tel quel » à des fins d’information générale et d’éducation uniquement, sans aucune déclaration ni garantie de quelque nature que ce soit. Il ne doit pas être interprété comme un conseil financier, juridique ou autre conseil professionnel, et il ne vise pas à recommander l’achat d’un produit ou d’un service spécifique. Vous devriez demander l’avis de professionnels compétents. Lorsque le contenu est fourni par un contributeur tiers, veuillez noter que les opinions exprimées appartiennent audit contributeur tiers et ne reflètent pas nécessairement celles de Binance Academy. Les prix des actifs numériques peuvent être volatils. La valeur de votre investissement peut évoluer à la hausse ou à la baisse et vous pourriez ne pas récupérer le montant investi. Vous êtes seul responsable de vos décisions d’investissement et Binance Academy n’est pas responsable des pertes que vous pourriez subir. Pour plus d’informations, veuillez consulter nos Conditions d’utilisation, l’Avertissement relatif aux risques et les Conditions de Binance Academy.
