Comprendre le Web3 et le risque pour la sécurité

Réflexions à l'heure où les entreprises explorent le web décentralisé

Premiers pas dans le monde du Web3

La transition du Web 1.0 au Web 2.0 a exposé les entreprises à une multitude de nouveaux risques de sécurité. La possibilité pour tout utilisateur de publier du contenu sur Internet signifiait que des saisies de données non approuvées et malveillantes pouvaient plus facilement compromettre des sites web, divulguer des données et infecter des bases de données.

À mesure que les entreprises commenceront à explorer le nouveau monde du Web3, elles devront faire face à un nouvel ensemble de vulnérabilités en matière de sécurité, dont certaines qu'elles n'auront peut-être jamais connues auparavant. Les entreprises qui expérimentent actuellement avec le Web3 devront adopter de nouvelles approches pour relever ces défis.

Les concepts fondamentaux du Web3

Le Web3 est une vision d'une version décentralisée du web, dont la propriété est collective. La technologie du Web3 repose sur des bases de données décentralisées, dont toute modification ou mise à jour nécessite un consensus majoritaire.

Pour résumer en quoi le Web3 diffère des technologies web précédentes :

  • Le Web 1.0 est lu : les utilisateurs peuvent accéder à des données sur le web, mais ne peuvent pas interagir avec elles.

  • Le Web 2.0 est en lecture-écriture : les utilisateurs contribuent des données au web, par exemple, en transférant des contenus.

  • Le Web3 est en lecture-écriture-propriété : les utilisateurs ne contribuent pas simplement des données ; ils en sont propriétaires.

Ce concept de lecture-écriture-propriété est rendu possible par quelques principes de base :

Décentralisation

Pendant la majeure partie de l'histoire de l'Internet, les applications web ont été contrôlées par des fournisseurs centralisés. Ces fournisseurs contrôlent la logique et les données des applications, et ils peuvent les modifier et les effacer à leur convenance.

Dans le Web3, les applications web sont distribuées sur un réseau peer-to-peer (P2P) de nœuds connectés. Il n'existe pas d'autorité ou de contrôleur central ; les données sont toujours visibles par tous les nœuds, et les données ne peuvent pas être effacées ou modifiées sans le consensus du réseau.

Consensus

Dans le Web3, la validation de nouvelles transactions ou mises à jour requiert un consensus majoritaire du réseau. Les blockchains utilisent des mécanismes de validation de type « preuve de travail » (PoW) et « preuve d'enjeu » (PoS) pour parvenir à un consensus.

Confiance implicite

Le Web3 s'appuie sur la cryptographie, notamment le hachage, pour s'assurer que les données ne sont jamais modifiées ou supprimées sans l'accord du réseau de prise en charge.

Par exemple, un bloc donné d'une blockchain ne peut pas être modifié seul, car son hachage est enregistré sur le bloc suivant. Toute modification d'un bloc entraîne une modification de la valeur du bloc suivant, qui invalide à son tour le hachage du bloc suivant, et ainsi de suite. En d'autres termes, toute modification nécessite de modifier une grande partie du reste de la blockchain. De telles modifications ont bien lieu, mais elles nécessitent un large consensus de la part du réseau de prise en charge et consomment d'importantes ressources.

À bien des égards, cela rend le Web3 plus sûr que le Web 2.0. Les clients participants sont certains de recevoir précisément les données qu'ils demandent, et les données demandées ne peuvent être ni modifiées, ni remplacées par un contenu malveillant. Les clients n'ont pas besoin de faire confiance à un fournisseur centralisé ; la confiance implicite est intégrée à la blockchain.

Comment les entreprises utilisent le Web3

Les entreprises explorent les possibilités du Web3 de différentes manières, allant des architectures d'applications décentralisées à des méthodes de stockage de fichiers plus résistantes.

Blockchain et applications décentralisées (DApps)

La blockchain est une méthode d'enregistrement de transactions dans des blocs de données chronologiques sur un réseau distribué. Les données écrites sur la blockchain ne peuvent pas être modifiées.

Une des applications les plus connues de la blockchain est la cryptomonnaie, qui est la composante cruciale des services financiers décentralisés (DeFi) utilisés aujourd'hui. Cependant, les développeurs peuvent également écrire des applications décentralisées (DApps) dont l'exécution repose sur une blockchain, notamment les NFT (Non-Fungible Token, jeton non fongible).

Les contrats intelligents constituent la logique des DApps. Un contrat intelligent est un code conçu pour exécuter des fonctions spécifiques. Comme toute autre fonction programmable, les contrats intelligents s'exécutent lorsqu'ils sont appelés. Les contrats intelligents sont créés et stockés sur des réseaux de blockchain.

Du point de vue du développement, les DApps offrent aux entreprises l'avantage de ne pas devoir assurer la gestion et la maintenance de l'ensemble de l'infrastructure backend nécessaire à la prise en charge d'une application. Les contrats intelligents sont stockés sur la blockchain et s'exécutent de manière autonome. En règle générale, une organisation déployant une DApp doit également assurer le déploiement et la maintenance d'une interface utilisateur, en utilisant un service intermédiaire pour adresser des requêtes API aux contrats intelligents présents sur le backend.

Les DApps sont fiables, car elles s'exécutent sur un vaste réseau peer-to-peer, tandis que les applications centralisées s'arrêtent en cas de défaillance de leur infrastructure de prise en charge.

La finance est l'un des principaux scénarios d'utilisation des DApps. Parmi les exemples figurent les cryptomonnaies et les portefeuilles, ainsi que les échanges décentralisés. Par ailleurs, les développeurs ont créé des DApps proposant des navigateurs web, des jeux, des réseaux sociaux et d'autres services également.

Finance décentralisée (DeFi)

La finance décentralisée (DeFi) est un ensemble de méthodes permettant d'obtenir des services financiers sans dépendre d'autorités centralisées telles que les banques. Les utilisateurs de la DeFi peuvent accorder ou recevoir des prêts, acheter, vendre et échanger des cryptomonnaies, percevoir des intérêts et effectuer d'autres tâches associées au secteur des services financiers – et tout cela, en utilisant des plateformes décentralisées. La DeFi repose en grande partie sur des contrats intelligents (soutenus par la blockchain Ethereum). Les échanges centralisés (tels que Coinbase) prennent en charge la DeFi, mais les protocoles de la DeFi sont intrinsèquement décentralisés.

Stockage distribué et décentralisé de fichiers et de données

Le stockage décentralisé des transactions fait de la blockchain une pierre angulaire du Web3 ; toutefois, il ne s'agit pas là du seul type d'architecture avec lequel les entreprises expérimentent actuellement. IPFS (Interplanetary File System) est un autre protocole (non-blockchain) permettant la mise en œuvre des principes du Web3. IPFS stocke les données dans un système de fichiers distribué. L'adresse des contenus fournis via IPFS ne peut pas être modifiée ; toute mise à jour entraîne une nouvelle adresse de contenu unique. Par ailleurs, l'architecture distribuée d'IPFS rend ce protocole plus résilient et plus fiable que les méthodes de stockage plus centralisées.

Les entreprises peuvent compter sur IPFS pour servir les contenus aux utilisateurs en toute confiance. IPFS permet également aux utilisateurs de publier facilement leurs propres contenus à partir de leurs environnements.

Les principaux risques de sécurité du Web3

Si les principes fondamentaux du Web3 le rendent plus sûr que le Web 2.0 à certains égards, à l'instar de toute technologie, il comporte un certain nombre de risques de sécurité. Certaines failles de sécurité proviennent de la manière dont interagissent les architectures Web3 et Web 2.0, tandis que d'autres sont inhérentes au fonctionnement de protocoles tels que la blockchain et IPFS. Et la dépendance de Web3 vis-à-vis du consensus du réseau peut rendre très lente la correction de ces failles et d'autres.

Parmi les principaux risques de sécurité figurent notamment :

L'absence de chiffrement et de vérification des requêtes d'API

La plupart des personnes savent qu'il faut éviter de transmettre des données personnelles à des demandeurs non vérifiés. Néanmoins, les applications Web3 sont souvent tributaires d'appels et de réponses d'API qui n'authentifient pas les terminaisons de la connexion.

En théorie, le Web3 est complètement décentralisé, et tout nœud connecté présent sur le réseau peut interagir directement avec les données stockées. En pratique, les front-ends des applications Web3 seront toujours dépendants de technologies Web 2.0, avec lesquelles les points de terminaison des utilisateurs peuvent interagir facilement. La plupart des front-ends d'applications Web3 transmettent des requêtes d'API au back-end Web3 pour exécuter la logique métier et le stockage des données.

Actuellement, de nombreuses requêtes d'API du Web3 ne possèdent pas de signature cryptographique. Cela les rend vulnérables aux attaques de l'homme du milieu (« on-path »), à l'interception des données et à d'autres attaques, tout comme l'utilisation d'applications HTTP Web 2.0 non chiffrées et non signées rend les utilisateurs vulnérables aux fuites de données et aux attaques de l'homme du milieu. En d'autres termes, il n'existe souvent aucune garantie que les données d'applications Web3 proviennent de la source correcte, en dépit du concept de « confiance implicite » décrit ci-dessus.

Piratage de contrats intelligents

À l'image de tout code, les contrats intelligents peuvent contenir des failles de sécurité majeures, qui mettent en danger les données ou (comme c'est souvent le cas) les fonds des utilisateurs. Une étude de 2019 a identifié des contrats intelligents Ethereum incorrectement codés, qui compromettaient la sécurité de 4 millions de dollars d'Ether. Le problème ne s'est pas arrangé avec le temps ; en décembre 2021, des contrats intelligents défectueux ont permis à des attaquants de dérober un montant d'environ 31 millions de dollars en cryptomonnaies. Et en mai 2022, un algorithme défectueux a entraîné une perte de valeur d'environ 50 milliards de dollars de la cryptomonnaie TerraUSD.

Préoccupations en matière de confidentialité pour le stockage décentralisé des données

Les données d'une blockchain peuvent être stockées et consultées par n'importe quel nœud connecté, contrairement au modèle Web 2.0, dans lequel l'accès aux bases de données peut être fortement restreint. Cela entraîne une multitude de problèmes de sécurité et de confidentialité, en fonction des données stockées. Même si elles sont anonymisées au repos, différentes études démontrent systématiquement qu'aucune donnée n'est véritablement anonyme.

Vols de comptes et de portefeuilles mobiles

Les médias regorgent d'articles décrivant des attaques contre des portefeuilles de cryptomonnaies ou de NFT. Le plus souvent, ces attaques ont lieu lorsque des acteurs malveillants accèdent aux clés privées des utilisateurs ou recourent au phishing pour les inciter à les divulguer. Par ailleurs, si ces clés privées sont stockées localement sur l'appareil d'un utilisateur, elles sont vulnérables aux vols physiques.

Jusqu'à présent, dans la mesure où les cryptomonnaies constituent la principale utilisation des DApps et du Web3 en général, la plupart des attaques ont ciblé les monnaies numériques. Cependant, les implications pour les autres applications de la technologie Web3 pourraient être tout aussi coûteuses.

Attaques de protocole et de pont

Tout le Web3 ne repose pas directement sur la blockchain. Tout comme l'Internet est constitué de couches (7 couches, selon le modèle OSI) superposées les unes avec les autres, des protocoles sont superposés sur la blockchain. Un exemple est le recours généralisé aux « ponts », qui sont des protocoles permettant les transferts d'une blockchain à une autre.

Ces protocoles peuvent également être la cible d'attaques. Par exemple, des voleurs ont exploité une vulnérabilité du pont Wormhole en février 2022, afin de voler un montant d'environ 320 millions de dollars en cryptomonnaies.

Des mises à jour lentes

Le Web3 rend difficile l'application de correctifs pour les problèmes de sécurité après leur identification. Puisque le Web3 est fondé sur le consensus décentralisé du réseau, toute modification doit être approuvée par l'ensemble du réseau.

Il s'agit peut-être là du plus grand défi de sécurité pour le Web3. Il n'est pas humainement possible de développer des applications totalement sécurisées, et l'impossibilité de remédier rapidement aux vulnérabilités augmente l'impact que peuvent avoir les failles de sécurité, puisque celles-ci resteront actives plus longtemps, même après leur découverte.

Risques habituels du Web 2.0

Du vol d'informations d'identification de l'utilisateur à l'exécution de scripts de site à site, les front-ends du Web3 présenteront les mêmes vulnérabilités que les front-ends du Web 2.0, en dépit de la présence du backend Web3. Les injections de code, les bots, les attaques basées sur les API et d'autres vecteurs de menace peuvent mettre les applications et les utilisateurs en danger.

Bonnes pratiques pour protéger les applications et l'infrastructure du Web3

Chiffrement et signature des requêtes d'API

L'utilisation généralisée du protocole TLS (Transport Layer Security) pour les requêtes et réponses HTTP a considérablement amélioré la sécurité du Web 2.0. De même, l'application du chiffrement et de la signature numérique des requêtes et réponses d'API pour les DApps du Web3 sera cruciale pour protéger les données des applications.

Pare-feu WAF et autres mesures de sécurité du Web 2.0

Les entreprises ont aujourd'hui des décennies d'expérience dans la lutte contre les failles de sécurité du Web 2.0. Bien que cela ne réduise pas la gravité de ces vulnérabilités, cela signifie en revanche que des méthodes sont disponibles depuis longtemps pour protéger les comptes d'utilisateurs, empêcher l'injection de code et bloquer l'exécution de code de site à site, entre autres attaques. Les mesures telles que les pare-feu d'applications web (WAF), la gestion des bots et la sécurité des API permettent d'arrêter de nombreux vecteurs d'attaque ciblant les front-ends d'application.

Vérification approfondie du code avant le déploiement

Cette étape était également importante dans le Web 2.0, mais de nombreuses organisations (si ce n'est la plupart) l'ignorent ou la bâclent afin de prioriser un lancement et une itération rapides. Après tout, les éventuelles failles de sécurité de fonctionnalités ou de produits récemment lancés pourraient être corrigées dans la version suivante.

Avec le Web3, toutefois, ce n'est pas si simple. Le déploiement de mises à jour et d'ajouts relatifs aux applications décentralisées demande beaucoup plus de temps qu'avec le Web 1.0 et le Web 2.0, puisqu'il nécessite le consensus de l'ensemble du réseau décentralisé. Il devient donc opportun d'identifier à l'avance, les vulnérabilités en matière de sécurité, et non après coup. Dans un tel scénario, l'importance de la vérification du code est démultipliée.

Web3 : comment évoluer en toute sécurité

À l'heure où les entreprises explorent et commencent à interagir avec le Web3, elles doivent continuer à prioriser la sécurité. Les failles de sécurité peuvent paralyser une entreprise ou porter préjudice à sa réputation. Et parce que les applications Web3 reposent sur des front-ends de type Web 2.0, les entreprises devront se prémunir simultanément contre les risques de sécurité liés au Web 2.0 et au Web3.

Cloudflare aide à combattre les failles de sécurité des organisations dans toutes les situations, qu'il s'agisse de la protection de réseaux sur site, d'organisations accomplissant leur migration vers le cloud ou d'entreprises adoptant de nouveaux modèles tels que le Web3. Pour le Web3, Cloudflare peut aider les organisations à protéger leur front-end et leur back-end, tout en fournissant des passerelles qui facilitent l'interface avec le Web3.

Cloudflare gère et sécurise la connexion à l'infrastructure Web3 afin que les entreprises puissent se concentrer sur ce qui importe : la création de produits ultra-performants et de services nécessaires pour leurs utilisateurs.

Cet article fait partie de notre série consacrée aux dernières tendances et évolutions susceptibles d'influencer les décideurs en matière de technologies d'aujourd'hui.

Points clés

Cet article vous permettra de comprendre les points suivants :

  • Qu'est-ce que le Web3 ?

  • Comment les entreprises intègrent le Web3 à leurs produits et opérations

  • Les risques de sécurité communs du Web3

  • Comment atténuer ces risques de sécurité

RESSOURCES ASSOCIÉES


Approfondir le sujet

Pour vous préparer au Web3, découvrez le fonctionnement de la technologie sous-jacente dans le livre blanc consacré à la passerelle Ethereum.

Get the white paper!

Bénéficiez d'un récapitulatif mensuel des tendances Internet les plus populaires !