Site icon Blog de la Transformation Digitale

Blockchain : est-elle aussi inviolable qu’on le prétend?

J’entend et je lis partout que la blockchain est inviolable. Qu’elle serait l’avenir de la cybersécurité. En fait il y a beaucoup de mythes autour de cette nouvelle technologie. Et cela vient essentiellement de l’essor des crypto-monnaies depuis quelques années. Il s’agit seulement d’une technologie et elle n’est pas inviolable. Elle est seulement à ses débuts et aucun cyber-criminel n’irait s’attaquer à une nouvelle technologie s’il n’y avait pas de bénéfice à en tirer. Or avec l’essor du bitcoin, les bénéfices substantiels ont commencé à devenir évidents. Les pirates ont donc commencé à s’attaquer à cette nouvelle technologie. Résultat : plus de 2 milliards de dollars ont été détournés des transactions en bitcoins utilisant la blockchain depuis début 2017. Alors, la blockchain est-elle aussi inviolable qu’on le prétend?

Crédit © rawpixel.com 2019

L’utilisation de la  blockchain ne se limite pas au domaine des crypto-monnaies. Elle a de multiples applications dans les entreprises. Il y a quelques semaines, l’IDC a dévoilé ses prévisions pour 2019 concernant la transformation numérique mondiale. Deux des dix prédictions sont liées à la blockchain et IDC lui prédit un impact majeur d’ici 2021.

La blockchain apporte des solutions aux entreprises

Réduction des coûts de transaction de 35%

La première prévision est la suivante: «D’ici 2021, les chaînes de valeur de premier plan dans l’industrie, activées par les chaînes de blocs, auront étendu leurs plates-formes numériques à l’ensemble de leurs écosystèmes omni-expériences, réduisant ainsi les coûts de transaction de 35%».

Robert Parker, vice-président du groupe IDC, a expliqué comment les entreprises commencent à intégrer des projets pilotes de blockchain dans leurs programmes de transformation numérique. 42% des entreprises ont au moins un pilote actif de blockchain. Cependant, il note qu’aujourd’hui seulement une ou deux entreprises dirigent ces projets. Il donne ainsi les exemples de Walmart ou Bumble Bee.

«À compter de 2019, nous commencerons par envisager une transition vers un plus grand nombre d’initiatives basées sur des consortiums, dans lesquels toutes les chaînes de valeur se réuniront pour tirer parti des enregistrements immuables et des capacités du grand livre distribué dans la Blockchain», a déclaré Parker. « Et cela représente vraiment une opportunité de réduire considérablement les pertes dans les chaînes de valeur de l’industrie en réduisant réellement les coûts de transaction. »

Les DSI doivent donc trouver un équilibre entre la priorité donnée à la sécurité et la nécessité de partager des données au sein de consortiums et de marchés. Mais les DSI doivent également rechercher des moyens de réduire les coûts de transaction au sein des consortiums. Or, étant donné le besoin prévisible de talents et la quantité disponible de compétences, il est nécessaire d’embaucher tôt.

30% des fabricants et détaillants permettront la tracabilité complète des produits

La deuxième prédiction IDC concernant la blockchain est la suivante. « D’ici 2021, environ 30% des fabricants et des détaillants du monde entier auront instauré la confiance numérique via des services de blockchain basés sur des chaînes d’approvisionnement collaboratives permettant aux consommateurs d’accéder aux historiques des produits. »

Les avantages vont bien au-delà de la réduction des coûts de transaction. C’est l’expérience client qui s’entrouvre améliorée.

«Les consommateurs sont de plus en plus sceptiques quant à la légitimité des affirmations des détaillants et des fabricants de biens de consommation», a expliqué Parker. “Que signifie “ totalement naturel ”? Que signifie vraiment « origine durable »? Bien sûr il existe certaines normes, mais il y a beaucoup de latitude. La Blockchain offre aux entreprises la possibilité de satisfaire les attentes des clients en matière de traçabilité.

Par exemple, Bumble Bee Foods permet de tracer le poisson depuis le pêcheur jusqu’à la table du restaurant. En outre, la traçabilité présente d’autres avantages, tels que la réduction du coût des rappels. Et pour les articles de grande valeur, il existe un potentiel de solutions anti-contrefaçon.

Quels sont les risques en matière de sécurité?

Le mois dernier, l’équipe de sécurité de Coinbase a remarqué quelque chose d’étrange dans Ethereum Classic, l’une des crypto-monnaies que les internautes peuvent acheter et vendre à l’aide de la plateforme d’échange de Coinbase. Sa blockchain, l’historique de toutes ses transactions, était sous le coup d’une attaque.

La double dépense

Un pirate avait en sorte pris le contrôle de plus de la moitié de la puissance de calcul du réseau et l’utilisait pour réécrire l’historique de sa transaction. Cela lui permettait de dépenser plus d’une fois la même crypto-monnaie. C’est ce qu’on appelle la «double dépense»( « double spending » en anglais). Le cyber-criminel a été repéré en train de détourner environ 1,1 million de dollars. Coinbase affirme que rien n’a finalement été volé dans aucun de ses comptes. Une deuxième plateforme très populaire, Gate.io, a admis n’avoir pas été aussi chanceuse. Elle aurait ainsi perdu environ 200 000 dollars au profit de l’attaquant. Celui-ci, étrangement, en aurait restitué la moitié deux jours plus tard.

Il y a tout juste un an, ce scénario catastrophe était considéré comme de la science-fiction. Cependant la soi-disant attaque à 51% contre Ethereum Classic n’est, en fait, que la dernière d’une série ce cyber-attaques récentes contre les chaînes de blocs (blockchains), qui ont élevé le niveau des enjeux pour le secteur naissant.

Au total, les pirates informatiques ont volé près de 2 milliards de dollars de crypto-monnaie depuis le début de 2017. Ceci concerne principalement les échanges. C’est du moins ce qui a été révélé publiquement. Cela ne peut pas non plus être l’oeuvre  d’attaquants solitaires opportunistes. La société d’analyse Chainalysis a récemment déclaré que deux groupes, apparemment toujours actifs, pourraient, à eux seuls avoir, volé un montant cumulé d’un milliard de dollars dans les échanges.

Un processus connu

Nous ne devrions pas être surpris. Les blockchains sont particulièrement attrayantes pour les voleurs. En effet, il est impossible d’inverser les transactions frauduleuses, comme cela est souvent le cas dans le système financier traditionnel. De plus elles garantissent un anonymat complet, mettant ainsi les cyber-criminels à l’abri d’une possible identification.  En outre, nous savons depuis longtemps que, bien que les chaînes de blocs aient des fonctionnalités de sécurité uniques, elles comportent aussi des vulnérabilités uniques. Les slogans marketing et les gros titres qui parlaient d’une technologie «inviolable» sont donc totalement faux.

Cela a été compris, du moins en théorie, depuis l’apparition du Bitcoin, dans la dernière décennie. Mais c’est au cours de l’année écoulée, face à l’explosion des nouveaux projets de crypto-monnaie, que nous avons commencé à voir ce que cela signifiait dans la pratique, et en quoi ces faiblesses intrinsèques pourraient affecter l’avenir des blockchains et des actifs numériques.

Comment pirater une blockchain?

Avant d’aller plus loin, essayons de mettre quelques définitions sur les termes.

Le fonctionnement d’une blockchain?

Une blockchain est une base de données cryptographique gérée par un réseau d’ordinateurs, chacun d’entre eux stockant une copie de la version la plus récente. Un protocole de chaîne de blocs est un ensemble de règles qui dictent la manière dont les ordinateurs du réseau, appelés des noeuds, doivent vérifier les nouvelles transactions et les ajouter à la base de données. Le protocole utilise la cryptographie, la théorie des jeux et des considérations économiques pour inciter les nœuds à s’efforcer de sécuriser le réseau au lieu de l’attaquer à leurs propres fins. S’il on le configure correctement, ce système peut rendre extrêmement difficile et coûteuse l’ajout de fausses transactions. Mais, à l’inverse, la vérification des transactions valides est relativement facile.

Les avantages d’une chaîne de blocs

C’est ce qui rend cette technologie si attrayante pour de nombreuses industries, à commencer par la finance. Les services qui seront lancés prochainement par des institutions aussi renommées que Fidelity Investments et Intercontinental Exchange, propriétaire de la Bourse de New York, commenceront à enchevêtrer des chaînes de blocs dans le système financier existant. Même les banques centrales envisagent maintenant de les utiliser pour de nouvelles formes numériques de monnaie nationale.

Mais plus un système de blockchain est complexe, plus il y a de risques de faire des erreurs lors de son installation. Plus tôt ce mois-ci, la société en charge de Zcash, une crypto-monnaie utilisant des calculs extrêmement compliqués pour permettre aux utilisateurs d’effectuer des transactions privées, a révélé qu’elle avait secrètement corrigé une « faille cryptographique » intégrée accidentellement au protocole. Un attaquant aurait pu l’exploiter pour créer un nombre illimité de Zcash contrefaits. Heureusement, personne ne semble l’avoir fait avant la correction de la faille.

Qu’en est-il de la sécurité?

Cependant, le protocole n’est pas la seule chose à sécuriser. Pour négocier vous-même une crypto-monnaie ou exécuter un nœud, vous devez utiliser un logiciel client. Or, celui-ci peut également contenir des vulnérabilités. En septembre, les développeurs du principal client de Bitcoin, appelé Bitcoin Core, ont dû se débrouiller pour corriger un bug (également en secret). Celui-ci aurait pu permettre à des attaquants de créer plus de bitcoins que ce que le système n’est censé autoriser.

Malgré tout, la plupart des piratages récents qui ont fait les gros titres n’ont pas attaqué les chaînes de block proprement dites. Ils se sont portés sur les échanges, les plateformes Web sur lesquels les gens achètent échangent et détiennent des crypto-monnaies. Et beaucoup de ces éléments pourraient être responsables de mauvaises pratiques de sécurité de base. Cela a changé en janvier avec l’attaque de 51% contre Ethereum Classic.

Les attaques à 51%

La vulnérabilité aux attaques à 51% est inhérente à la plupart des crypto-devises. C’est parce que la plupart sont basées sur des blockchains qui utilisent la preuve de travail comme protocole de vérification des transactions. Dans ce processus, appelé minage (mining en anglais), les nœuds dépensent une grande quantité de puissance de calcul pour prouver qu’ils sont suffisamment dignes de confiance pour ajouter des informations sur les nouvelles transactions à la base de données.

Le principe de l’attaque

Un mineur qui contrôle d’une manière ou d’une autre la majorité de la puissance de minage du réseau peut frauder d’autres utilisateurs en leur envoyant des paiements, puis en créant une version alternative de la blockchain dans laquelle les paiements ne se sont jamais produits. Cette nouvelle version s’appelle un fork. L’attaquant, qui contrôle plus de la moitié de la puissance de minage, peut alors faire de la branche fork la version faisant autorité de la chaîne. Il peut alors procéder une seconde fois à la même utilisation de la même crypto-monnaie.

Pour les chaînes de blocs populaires, tenter ce type de vol serait probablement extrêmement coûteux. Selon le site Web Crypto51, louer suffisamment d’énergie de minage pour attaquer Bitcoin coûterait actuellement plus de 260 000 dollars par heure. Mais le coût diminue rapidement à mesure que vous descendez dans la liste comportant plus de 1 500 crypto-monnaies disponibles. La chute du prix des pièces le rend réduit encore les coûts. En effet, elle oblige alors les mineurs à éteindre leurs machines, laissant ainsi les réseaux moins protégés.

Un type d’attaque qui risque de se multiplier

Vers le milieu de 2018, les assaillants ont commencé à lancer des attaques à 51% sur une série de crypto-monnaies relativement petites et peu échangées, notamment Verge, Monacoin et Bitcoin Gold. Ils ont ainsi réussi vol total estimé à 20 millions de dollars. À l’automne, les cyber-criminels ont volé environ 100 000 $ en utilisant une série d’attaques contre une devise appelée Vertcoin. La cyber-attaque contre Ethereum Classic était la première ciblant l’une des 20 devises les plus populaires. Elle a rapporté plus d’un million de dollars aux cyber-criminels.

David Vorick, cofondateur de la plate-forme de stockage de fichiers Sia, basée sur une chaîne de blocs, prédit que la fréquence et la gravité des attaques à 51% continueront d’augmenter, et que les échanges subiront les conséquences des doubles dépenses. Selon lui, l’un des éléments moteurs de cette tendance a été la montée des soi-disant marchés hashrate. Ceux-ci permettent aux cyber-criminels de louer de la puissance de calcul pour leurs attaques. «Au final, les échanges devront être beaucoup plus restrictifs lors de la sélection des crypto-monnaies à prendre en charge», a écrit Vorick après le piratage Ethereum Classic.

Un nouveau réservoir de vers

Outre les attaques à 51%, il existe désormais une nouvelle vulnérabilité en matière de sécurité dans la blockchain. Et les chercheurs commencent tout juste à explorer ses implications. Cela porte sur les bugs liés aux contrats intelligents. Par coïncidence, l’origine d’Ethereum Classic constitue un bon point de départ pour mieux comprendre ce dont il s’agit.

Les contrats intelligents

Un contrat intelligent est un programme informatique qui s’exécute sur un réseau de chaîne de blocs. Il peut être utilisé pour automatiser le mouvement de la crypto-monnaie conformément aux règles et aux conditions prescrites. Cela a de nombreuses utilisations potentielles, telles que la facilitation de contrats légaux réels ou de transactions financières compliquées. Une autre utilisation consiste à créer un mécanisme de vote permettant à tous les investisseurs d’un fonds de capital-risque de décider collectivement de la manière dont l’argent sera réparti.

Une telle organisation porte le nom de Decentralized Autonomous Organization (DAO ou en français « Organisation Autonome Décentralisée »). Il s’agit d’une organisation fonctionnant grâce à un programme informatique qui fournit des règles de gouvernance à une communauté. Ces règles sont transparentes et immuables car inscrites dans un réseau de chaîne de blocs. Elles s’appuient sur une technologie de stockage et de transmission d’informations, transparente, sécurisée, et fonctionnant sans organe central de contrôle

Un tel fonds, a été créé en 2016 à l’aide d’un système de chaîne de blocs appelé Ethereum. Peu de temps après, un attaquant a volé plus de 60 millions de dollars de crypto-monnaie en exploitant une faille imprévue dans un contrat intelligent régissant la DAO. La faille permettait au pirate informatique de continuer à demander de l’argent à des comptes sans que le système n’enregistre que l’argent avait déjà été retiré.

Comme le montre cette attaque, un bug dans un contrat smart live peut créer un type d’urgence unique. Dans les logiciels traditionnels, On peut corriger un bug grâce à un correctif. Dans le monde de la blockchain, ce n’est pas si simple. Les transactions sur une chaîne de blocs ne peuvent pas être annulées. Déployer un contrat intelligent, c’est un peu comme lancer une fusée, explique Petar Tsankov, chercheur à l’ETH Zurich et cofondateur de la startup de sécurité des contrats intelligents appelée ChainSecurity. « Le logiciel n’a pas le droit à l’erreur »

Comment corriger les failles dans une chaîne de blocs

Il existe cependant quelque chose qui peut s’apparenter à des correctifs. Bien qu’ils ne puissent pas être patchés, certains contrats peuvent être «mis à niveau». Cette mise à niveau se fait en déployant des contrats intelligents supplémentaires qui vont interagir avec eux. Les développeurs peuvent également créer des commutateurs de neutralisation centralisés sur un réseau pour arrêter toute activité dès la détection d’un piratage. Mais pour les utilisateurs aucune annulation de transaction n’est possible. Et donc, pour l’argent qui leur aura déjà été volé, il sera trop tard.

La seule façon de récupérer l’argent consiste à réécrire l’historique. C’est à dire à revenir au point situé sur la blockchain avant l’attaque. Il faut alors créer un fork pour une nouvelle chaîne de blocs et demander à tous les utilisateurs du réseau de l’utiliser. C’est ce que les développeurs d’Ethereum ont choisi de faire. La plupart des membres de la communauté, mais pas tous, se sont tournés vers la nouvelle chaîne, que nous connaissons maintenant sous le nom d’Ethereum. Un groupe plus restreint de détenteurs est resté sur la chaîne d’origine, qui est devenue Ethereum Classic.

Le mois dernier, l’équipe de Tsankov chez ChainSecurity a sauvé Ethereum d’une possible répétition de la catastrophe de DAO. A la veille d’une importante mise à niveau logicielle prévue, la société a informé les principaux développeurs d’Ethereum que cela aurait pour conséquence de laisser certains contrats sur la chaîne de blocs désormais vulnérables au même type de bug qui a conduit au piratage de DAO. Les développeurs ont rapidement reporté la mise à niveau et feront une nouvelle tentative plus tard ce mois-ci.

Les risques liés aux chaînes de blocs

Néanmoins, selon Victor Fang, cofondateur et PDG de la société de sécurité Anchain.ai, blockchain, des centaines de contrats intelligents Ethereum étaient déjà vulnérables à ce soi-disant virus de la réentrance. Selon des recherches effectuées l’année dernière, des dizaines de milliers de contrats pourraient contenir un autre type de vulnérabilité. Et la nature même des chaînes de blocs publiques signifie que, si un bug de contrat intelligent existe, les pirates le trouveront, car le code source est souvent visible sur la chaîne de blocs. «Cela est très différent de la cybersécurité traditionnelle», déclare Fang, qui travaillait auparavant pour la société de cybersécurité FireEye.

Les contrats de buggy, en particulier ceux qui détiennent des milliers ou des millions de dollars, ont attiré des pirates informatiques aussi avancés que ceux qui s’attaquent aux banques ou aux gouvernements. En août, AnChain a identifié cinq adresses Ethereum derrière une attaque extrêmement sophistiquée qui exploitait une faille contractuelle dans un jeu populaire pour voler 4 millions de dollars.

Comment contrer les cyber-criminels?

AnChain.ai est l’une des nombreuses entreprises récentes créées pour faire face à la menace de piratage de la blockchain. Il utilise l’intelligence artificielle pour surveiller les transactions et détecter les activités suspectes. Il peut également analyser le code du contrat intelligent pour rechercher les vulnérabilités connues.

Des pistes sont en train d’apparaître

D’autres sociétés, y compris la chaîne de sécurité de Tsankov, développent des services d’audit basés sur une technique informatique bien connue appelée vérification formelle. L’objectif est de prouver mathématiquement que le code d’un contrat fera réellement ce que ses créateurs ont voulu. Ces outils d’audit, qui ont commencé à faire leur apparition au cours de la dernière année environ, ont permis aux créateurs de contrats intelligents d’éliminer bon nombre des bugs qui avaient été «à portée de main», a déclaré Tsankov. Mais le processus peut être coûteux et prendre du temps.

Il pourrait également être possible d’utiliser des contrats intelligents supplémentaires pour mettre en place des «primes de bogues» basées sur une chaîne de blocs. Cela encouragerait les utilisateurs à signaler les défauts en échange d’une récompense de crypto-monnaie, explique Philip Daian, chercheur à l’Initiative pour les cryptomonnaies et les contrats de la Cornell University.

N’est-ce pas déjà trop tard?

Mais s’assurer que le code est propre n’ira que très loin. Après tout, une blockchain est un système économique complexe. Celui-ci dépend du comportement imprévisible des humains, et les gens rechercheront toujours de nouvelles façons de le jouer. Daian et ses collègues ont montré comment les attaquants avaient déjà compris comment tirer profit des contrats populaires. C’est ce qui se passa avec Ethereum, par exemple.

Conclusion

Si on vante la technologie de la blockchain pour sa sécurité, elle est toutefois très vulnérable dans certaines conditions. Parfois, une mauvaise exécution peut être en cause ou des bugs logiciels non intentionnels. D’autres fois, c’est plus une zone grise. C’est le résultat complexe des interactions entre le code, l’aspect économique de la blockchain et la cupidité humaine. C’est théoriquement connu depuis le début de la technologie. Maintenant que tant de blockchains existent dans le monde, nous apprenons ce que cela signifie réellement. Mais souvent l’apprentissage se fait à la dure.

 

Quitter la version mobile