
Adam Back souligne que les failles d'EVM sont en grande partie responsables non seulement du piratage de Bybit, mais de toutes les vulnérabilités observées dans l'écosystème Ethereum.
Adam Back, un développeur Bitcoin bien connu et co-fondateur de Blockstream, a pointé directement vers son compte X, la conception de la machine virtuelle Ethereum (EVM) comme principal coupable du piratage de Bybit, parmi d'autres vulnérabilités similaires présentées dans l'écosystème Ethereum.
Back, qui est une figure éminente de l'écosystème Bitcoin, a été un critique virulent des faiblesses de l'EVM et de son langage de programmation, Solidity. Selon lui, la conception de l'EVM, essentielle pour exécuter des contrats intelligents sur Ethereum et d'autres blockchains compatibles, présente des défauts structurels qui facilitent ce type d'attaque.
Mais Adam Back a-t-il raison ? Les problèmes de l’EVM sont-ils aussi graves qu’on le prétend ? Dans cet article, nous explorerons leurs arguments, discuterons des vulnérabilités historiques d’EVM et réfléchirons aux raisons pour lesquelles ces problèmes persistent dans l’industrie.
Qui est Adam Back et pourquoi son opinion est-elle importante ?
Adam Back est une figure emblématique dans le domaine des crypto-monnaies. En tant que cofondateur de Blockstream, une société leader dans la technologie blockchain, et l'un des pionniers du développement de Bitcoin, son opinion a du poids dans la communauté. Back est un fervent défenseur de la sécurité et de la simplicité dans la conception de la blockchain, des fonctionnalités qui, selon lui, manquent dans l'architecture EVM.
Et c'est là qu'entre en jeu le piratage de Bybit, au cours duquel plus de 1.400 milliard de dollars ont été perdus, car cet événement a été le catalyseur qui a poussé Back à exprimer ses critiques. Selon lui, de tels incidents ne sont pas seulement le résultat d'erreurs opérationnelles, mais trouvent leur origine dans une conception EVM non sécurisée.
« L'EVM est un incendie qui nuit à la crédibilité de l'écosystème », a-t-il déclaré dans un article récent. Pour Back, la complexité de l’EVM et de son langage, Solidity, sont un terrain propice aux vulnérabilités qui mettent en danger les utilisateurs et les plateformes.
Mais qu'est-ce que l'EVM exactement ? La machine virtuelle Ethereum est l'environnement d'exécution qui traite les contrats intelligents sur le réseau Ethereum. Il a été conçu pour être Turing-complet, ce qui signifie qu'il peut exécuter n'importe quel algorithme imaginable. Bien que cela offre de la flexibilité, cela introduit également de la complexité, ce qui, selon Back, constitue un problème sérieux.
ACHETER DES BITCOINSLe point de vue d'Adam Back : Quels sont les défauts structurels de l'EVM ?
Adam Back a identifié plusieurs problèmes clés dans la conception de l'EVM et de son langage de programmation, Solidity, qui, selon lui, facilitent les attaques telles que le piratage de Bybit. Parmi ses critiques les plus importantes, on peut citer :
- Complexité de l'EVMBack affirme que l’EVM est trop complexe, ce qui le rend sujet aux erreurs et aux vulnérabilités. « L'EVM est un incendie qui ne peut pas être contrôlé », il a déclaré dans un message récent. Selon lui, cette complexité affecte non seulement la sécurité, mais rend également difficile la vérification et la maintenance des contrats intelligents.
- Problèmes avec les contrats intelligents:Les contrats intelligents, qui sont le cœur de l’EVM, ont fait l’objet de nombreuses critiques. Back note que ces contrats, écrits en Solidity, contiennent souvent des bugs dus au manque d'outils adéquats pour valider leur sécurité. De plus, la capacité de l’EVM à exécuter du code complexe ouvre la porte à des vecteurs d’attaque difficiles à prévenir.
- Réentrance et autres types d'attaques:L’un des exemples les plus clairs de vulnérabilités EVM est l’attaque par réentrée. Ce type d'attaque se produit lorsqu'un contrat appelle un contrat externe, qui à son tour rappelle le contrat d'origine avant que l'exécution initiale ne soit terminée. Ces types d’attaques ont été responsables de certaines des pertes les plus importantes de l’histoire des cryptomonnaies, notamment le piratage de Bybit. À cet égard, Back a souligné que ces attaques sont possibles en raison du manque de mécanismes robustes pour empêcher la réentrée. « EVM permet aux contrats de communiquer de manière non sécurisée, ce qui ouvre la porte à ce type d'attaques », il a expliqué.
- Les échecs de la gestion de l’État:La gestion étatique de l’EVM a également fait l’objet de critiques. Back explique que la manière dont l'EVM gère les états peut entraîner des incohérences et des comportements inattendus, en particulier dans des environnements complexes.
- Solidité : un langage peu sûrLe langage de programmation Solidity, utilisé pour écrire des contrats intelligents sur l'EVM, a également été critiqué pour son insécurité. Back affirme que Solidity ne dispose pas des outils et des mécanismes nécessaires pour empêcher les bogues courants tels que les dépassements d'entiers, la réentrance et d'autres types de vulnérabilités.
Par exemple, dans le cas du piratage de Bybit, les attaquants ont exploité une faiblesse dans la gestion des signatures des portefeuilles multisig. Bien que ces types d’attaques ne soient pas propres à l’EVM, Back soutient que la complexité de l’EVM et de Solidity rend plus difficile l’identification et la résolution de ces problèmes.
Les problèmes d’EVM ne sont pas nouveaux
Mais étonnamment, Adam Back n’est pas le seul à souligner les faiblesses de l’EVM. En fait, bon nombre des problèmes qu’il a identifiés sont connus de la communauté depuis des années. Par exemple, l’attaque de 2016 contre The DAO, l’un des piratages les plus infâmes de l’histoire d’Ethereum, a été rendue possible par une vulnérabilité dans la logique d’un contrat intelligent. Une attaque qui avait été annoncée plusieurs jours auparavant, des avertissements qui n'ont pas été entendus et qui ont finalement abouti à un retour en arrière d'Ethereum. C'est cet événement qui a divisé Ethereum en deux : Ethereum Classic (la chaîne originale) et Ethereum (avec le rollback DAO pour récupérer des fonds et soutenu par Vitalik Buterin).
Le piratage de la DAO : un précédent historique
La DAO (Decentralized Autonomous Organization) était l'un des projets les plus ambitieux de l'histoire d'Ethereum. Lancé en 2016, le DAO a été conçu comme une organisation autonome décentralisée qui permettrait aux investisseurs de soutenir des projets par le biais du vote. Cela a été considéré comme une étape importante dans la mise en œuvre des contrats intelligents et une démonstration du potentiel de l’EVM.
Cependant, la DAO est également devenue un excellent exemple de la manière dont les vulnérabilités des contrats intelligents peuvent avoir des conséquences catastrophiques. En juin 2016, un attaquant a exploité une faiblesse dans la logique du contrat intelligent de la DAO, permettant le transfert non autorisé de plus de 3.6 millions d'éthers, alors évalués à plus de 70 millions de dollars.
Cette attaque a été rendue possible par une combinaison de facteurs, notamment :
- Réentrance : Le contrat DAO permettait à un attaquant d’appeler à plusieurs reprises une fonction avant la fin de l’exécution initiale, permettant ainsi de drainer des fonds de manière non autorisée.
- Manque de validation appropriée : Le contrat ne comportait pas les mécanismes nécessaires pour empêcher ce type d'attaque, même si des avertissements sur la possibilité d'une réapparition avaient été signalés par des experts quelques jours avant l'incident.
- Complexité de conception : Le contrat de la DAO était extrêmement complexe, ce qui le rendait difficile à auditer et à analyser avant sa mise en œuvre.
Le piratage de The DAO a donc été un moment déterminant dans l’histoire d’Ethereum. Non seulement cela a démontré les faiblesses de l’EVM et de son langage de programmation, Solidity, mais cela a également souligné la nécessité d’une plus grande attention à la sécurité dans le développement de contrats intelligents.
Cours d'analyse technique de crypto-monnaie
MoyenneDans cette formation, nous avons Iván González, un expert professionnel en investissements et crypto-monnaies, pour vous apprendre comment fonctionne le marché et comment les prix affectent le comportement des investisseurs.
Autres avertissements ignorés
Mais le piratage du DAO n’était pas un incident isolé. Au fil des années, de nombreux avertissements ont été émis sur les faiblesses de l’EVM et de Solidity. Par exemple:
- Le problème de la « réinsertion » : La réentrée a été l’un des vecteurs d’attaque les plus courants sur les contrats intelligents Ethereum. Bien que des modèles et des bibliothèques aient été développés pour atténuer ces types d'attaques, tels que le modèle Checks-Effects-Interactions, de nombreux développeurs ne les implémentent pas en raison de la complexité et du coût impliqués.
- L'attaque de tête : Ce type d’attaque, où un mineur ou un acteur malveillant intercepte et modifie une transaction avant qu’elle ne soit confirmée sur la blockchain, est possible grâce à la transparence des mémoires de transaction dans l’EVM. Bien qu’il existe des solutions pour éviter ce problème, comme l’utilisation de canaux d’état ou de couches de confidentialité, ces méthodes ne sont pas largement adoptées.
- Manque d’outils d’analyse statique : Pendant longtemps, les développeurs d’Ethereum manquaient d’outils robustes pour analyser et détecter les vulnérabilités des contrats intelligents. Bien que des outils comme Etherscan, Mythril et Slither aient amélioré la situation, il existe encore des limites dans la capacité à détecter des bugs complexes.
- Le problème des transactions « orphelines » et « bloquées » : Certains contrats mal conçus peuvent donner lieu à des transactions « orphelines » ou « bloquées », qui ne peuvent être ni exécutées ni annulées. Cela peut entraîner des problèmes d’évolutivité et une congestion du réseau.
Défis de sécurité EVM : peut-on y faire quelque chose ?
Bien que les problèmes de l’EVM soient graves, ils ne sont pas insurmontables. Il existe plusieurs mesures que nous pouvons prendre pour améliorer la sécurité des contrats intelligents et réduire le risque d’attaques comme celle sur Bybit.
- Amélioration de l'audit et des tests:L’un des moyens les plus efficaces de prévenir les vulnérabilités est d’effectuer des audits approfondis et des tests rigoureux avant de mettre en œuvre un contrat intelligent. Cela comprend l’utilisation d’outils automatisés et d’examens manuels par des experts en sécurité.
- Utiliser les meilleures pratiques:Les développeurs devraient adopter les meilleures pratiques pour rédiger des contrats intelligents plus sécurisés. Cela inclut l’utilisation de modèles tels que Checks-Effects-Interactions pour empêcher la réentrée et la mise en œuvre de mécanismes de contrôle d’accès robustes.
- Créer un cadre réglementaire:Bien que la décentralisation soit un principe fondamental des cryptomonnaies, la création d’un cadre réglementaire établissant des normes de sécurité pourrait contribuer à réduire le risque d’attaques. Cela pourrait inclure l’exigence d’audits de sécurité avant le lancement de tout contrat intelligent.
- Investissement en recherche et développement:La sécurité EVM nécessite un investissement continu dans la recherche et le développement. Cela comprend le développement de nouveaux langages de programmation plus sécurisés et l’amélioration des outils existants pour identifier et corriger les vulnérabilités.
Adam Back a-t-il raison ?
Dans tous les cas, Adam Back a soulevé une critique valable et nécessaire sur la conception de l’EVM et son impact sur la sécurité des crypto-monnaies. Les problèmes qu’il a identifiés ne sont pas nouveaux, mais ils sont graves. La complexité de l'EVM et les faiblesses de Solidity ont créé un environnement dans lequel des attaques comme celle sur Bybit peuvent se produire.
Cependant, il est important de noter que la sécurité EVM n’est pas un problème insoluble. Grâce à une combinaison de meilleures pratiques, d’investissements dans la recherche et le développement et d’une culture de sécurité plus solide, il est possible d’atténuer bon nombre de ces risques.
En attendant, la communauté doit tenir compte des avertissements d’experts comme Adam Back et prendre des mesures proactives pour protéger les actifs des utilisateurs. C’est seulement de cette manière que nous pourrons évoluer vers un écosystème plus sûr et plus fiable.
L'investissement en cryptoactifs n'est pas entièrement réglementé, peut ne pas convenir aux investisseurs particuliers en raison de la forte volatilité et il existe un risque de perdre tous les montants investis.