Introduction
Étant donné l’avènement des réseaux peer to peer comme la blockchain, un grand nombre de personnes s’intéresse à ces réseaux décentralisés. Qui dit beaucoup de personnes, dit aussi des personnes malveillantes.
les multiples hacks à sept ou huit chiffres ont fait parler de certains de ces protocoles de crypto monnaies et ont laissé apparaitre failles de sécurité récurrentes.
Nous verrons dans cet article une des menaces bien connues des réseaux peer to peer : les attaques sybil, qu’est-ce qu’elles impliquent et comment les réseaux blockchains tentent de s’en prémunir.
Qu’est-ce qu’une attaque Sybil ?
Nommée en référence au livre “Sybil” qui traite du cas d'étude d'une femme diagnostiquée d'un trouble dissociatif de l'identité, une attaque Sybil (ou Sybil attack en anglais) est un type d’attaque en informatique.
Couramment observée sur les réseaux peer to peer (pair à pair), une attaque Sybil implique un utilisateur malveillant tentant de contrôler ou manipuler le réseau à l’aide de multiples comptes ou nœuds créés sur celui-ci.
Il s’agit donc d’une entité tentant de contrôler plusieurs entités sur un réseau pour étendre son influence.
Ce concept est comparable à la vague de faux comptes observés récemment sur Twitter venant influencer le jugement des utilisateurs à l'aide de comptes possédant un nombre d’abonnés démesuré et en grande partie faux (achat de follower ou boost de followers à l'aide de robots).
Cette attaque de services sur des réseaux informatiques a porté de nombreux autres noms, notamment “pseudo-spoofing” et “sock puppets“.
On notera deux types de catégorie d’attaques Sybil :
- Attaques directes : Impliquant des faux nœuds (nœuds Sybil) usurpant l’identité de nœuds authentiques, finissant par êtres considérés et par communiquer avec le reste du réseau de nœuds authentiques. Ainsi le réseau, communiquant avec les nœuds Sybil, accepte l’influence de ceux-ci en son sein
- Les attaques indirectes : Dans le cas des attaques indirectes, des nœuds Sybil sont impliqués, mais également des nœuds normaux. Cependant, et contrairement aux attaques directes, ceux-ci ne communiquent pas directement entre eux. Les nœuds Sybil vont passer par un nœud intermédiaire “normal” communiquant avec le reste des nœuds authentiques du réseau et les corrompre. Ainsi le nœud intermédiaire intervient sur le réseau par procuration du nœud Sybil. Ce type d’attaques indirectes permet aux nœuds Sybil d’être moins facilement détectable.
Quels dangers pour les blockchains ?
La valeur et le taux d’utilisation des réseaux blockchain étant basé principalement sur la confiance que les utilisateurs portent en eux, une attaque Sybil réussie aurait un certain nombre de conséquences potentiellement fatal pour le réseau ciblé.
Voici une liste non exhaustive des principaux problèmes causés par les attaques Sybil :
- Suffisamment de fausses identités peuvent être créées afin de submerger tous les nœuds bienveillants du système. Ainsi, si les nœuds Sybil contrôlent le réseau, ils peuvent tout simplement modifier complètement le fonctionnement du réseau en choisissant ou non de transmettre ou de recevoir de nouveaux blocs dans le réseau. Cela a pour conséquence de bloquer l’accès au réseau pour les autres utilisateurs. Également, la perte du contrôle du réseau entrainera une perte totale de confiance envers lui et la chute du prix de ses actifs natifs.
- Le plus souvent les attaques Sybil sont utilisées pour effectuer des attaques 51%. Elles consistent à posséder 51% de la puissance de calcul (pour un réseau fonctionnant en proof of work) ou posséder un certain pourcentage des nœuds d'un réseau en proof of stake mettant ainsi les nœuds bienveillants en minorité. Cette attaque 51% est utilisée pour empêcher les transactions d’être confirmées, ordonner de nouvelles transactions ou même inverser des transactions provoquant une double dépense.
- On relèvera aussi le risque lié aux informations personnelles compromises par une attaque Sybil. En effet, les nœuds étant gestionnaires des flux d’informations au sein du réseau, les nœuds Sybil pourraient récupérer des informations sur les utilisateurs passant par les nœuds honnêtes du réseau.
Comment les blockchains peuvent se prémunir des attaques Sybil ?
Les réseaux blockchains d’aujourd’hui sont la cible d’attaques Sybil visant à les compromettre. Cependant, il existe un grand nombre de choses à mettre en place pour éviter ces attaques avant même qu’elles ne soient lancées.
Nous allons mettre en lumière les quelques manières les plus rependues mises en place par les réseaux :
- Décréter des couts associés à la création d’identité : Les attaques Sybil étant, la majorité du temps, lancé contre un réseau à des fins financières, s'il est couteux de créer une identité sur le réseau l’intérêt financier devient dénué d’intérêt voir parfois nul.
- Le système de réputation : Comme sur des sites de vente de biens ou de services traditionnels, les utilisateurs se fient largement plus à un vendeur noté 5 étoile, le système de réputation dans une blockchain fonctionne plus ou moins de la même manière. Plus un utilisateur est ancien et fait preuve d'honnêteté sur le réseau, plus il pourra effectuer d’interactions. Ceci demande donc un temps considérable à un acteur malveillant pour prétendre à effectuer une attaque Sybil.
- La validation d’identité : Certains réseaux décident de passer par des autorités centrales afin qu’elles valident chaque nouvel utilisateur. Ce procédé est devenu une obligation pour les plateformes centralisées et régulées comme Binance ou FTX. Dans ce cas-là, ce procédé porte le nom de KYC (Know Your Customer). Dans le cas de blockchain, ce procédé demande seulement certaine information, comme l’adresse IP ou le numéro de téléphone des nouveaux utilisateurs pour les vérifications contrairement aux plateformes d’exchange demandant un nombre d’informations beaucoup plus conséquent.
- Les mécanismes de consensus : Les différents mécanismes de consensus utilisé par les blockchains endiguent également le risque d’attaque Sybil. En effet, pour le système Proof of Work (preuve de travail) les utilisateurs doivent présenter une preuve de calcul effectué par leur machine s'ils souhaitent prétendre à faire partie des validateurs. Cela entraine donc une implication économique pour posséder une puissance de calcul suffisante. Également, le mécanisme de consensus Proof of Stake (preuve d’enjeu) implique la mise en séquestre (staking) de jetons natifs du réseau pour prétendre y participer.
Comme expliqué précédemment, les réseaux blockchain ont pour pilier la confiance de leur utilisateur qui viennent y déposer des fonds. Compromettre un réseau impliquerait donc la perte de cette confiance et donc la fuite des capitaux vers d’autres blockchains encore sécurisées.
Les utilisateurs malveillants ayant compromis le réseau se retrouveraient alors rois d’un royaume déserté sans aucune valeur financière.
C’est aussi par ce biais fondamental que le système de blockchain est très intéressant, car il rend, la plupart du temps, les comportements malveillants non rentables et donc encourage l’honnêteté de ses utilisateurs et acteurs.
Conclusion
Les attaques Sybil sont un des grands problèmes qui menace les blockchains. Bien que certaines solutions existent, le problème n’est pas résolu dans sa totalité ou demande des mises en place compliquées.
Pour le moment la principale solution est de rendre ces attaques trop couteuses, mais les systèmes de demain, espérons-le, proposeront des solutions plus viables à long terme.