Qu’est-ce qu’une attaque Sybil et comment fonctionne-t-elle sur les réseaux blockchain ?

Qu’est-ce qu’une attaque Sybil ?
Une attaque Sybil est une attaque au cours de laquelle une personne ou un groupe se fait passer pour de nombreux participants différents dans un réseau. L’attaquant crée par exemple plusieurs comptes, adresses de wallet, nodes ou identifiants peer et tente ainsi d’obtenir davantage d’influence qu’un seul participant n’en aurait normalement.
Le problème ne tient donc pas seulement au nombre de comptes. Il s’agit du fait que le réseau pense que toutes ces identités sont indépendantes les unes des autres, alors qu’en réalité elles sont contrôlées par la même partie. Si un système traite chaque identité comme un vote distinct, un peer distinct ou un participant fiable distinct, un attaquant peut en tirer parti.
Le terme attaque Sybil est devenu connu grâce à des recherches menées en 2002 sur les réseaux peer-to-peer. Une attaque Sybil n’a donc pas été conçue spécialement pour la blockchain, mais elle est importante dans la crypto. De nombreuses blockchains et dApps sont des systèmes ouverts dans lesquels il est relativement simple de créer de nouvelles identités numériques ou de nouvelles adresses. Si le réseau ne vérifie pas autrement combien d’influence une seule partie peut exercer, cela peut représenter un risque.
Exemple : supposons qu’un vote dans une dApp fonctionne selon le principe une adresse de wallet, une voix. S’il n’existe pas de contrôles supplémentaires, une seule personne peut créer cent adresses et exprimer cent voix. Pour le système, il s’agit de cent participants différents, alors qu’en réalité ils sont tous contrôlés par la même personne.
À retenir
- Dans une attaque Sybil, un seul attaquant se fait passer pour de nombreux participants indépendants.
- L’attaque fonctionne surtout contre les systèmes qui se contentent de compter les comptes, les adresses ou les nodes.
- Un attaquant peut ainsi manipuler par exemple des votes, des rewards, la réputation ou les connexions entre peers.
- Avoir beaucoup d’identités supplémentaires ne donne pas automatiquement plus de pouvoir de consensus dans Proof of Work et Proof of Stake.
- Les réseaux limitent le risque notamment grâce aux coûts, au stake, au peer-scoring et aux contrôles d’accès.
Comment fonctionne une attaque Sybil ?
Une attaque Sybil commence généralement par la création ou la collecte d’un grand nombre d’identités pseudonymes. Ici, pseudonyme signifie qu’une identité numérique, comme un identifiant de node, un compte ou une adresse de wallet, ne révèle pas automatiquement quelle personne ou organisation se trouve derrière.
Ensuite, l’attaquant fait participer ces identités simultanément au réseau. L’objectif est d’obtenir beaucoup d’influence sur un élément que le système mesure ou répartit par identité. Cela peut concerner par exemple les connexions réseau, l’accès à certaines ressources, les votes ou d’autres formes de participation.
En pratique, cela peut par exemple se produire via les connexions entre peers. Un node se connecte souvent à d’autres nodes, également appelés peers. Si un attaquant propose un grand nombre de peers qu’il contrôle, un node peut finir par être principalement connecté à ces peers. L’attaquant peut alors par exemple ralentir le trafic réseau, le filtrer ou faire en sorte que le node ait une vision déformée de ce qui se passe dans le reste du réseau.
Cela peut aussi poser problème en matière de redondance. La redondance signifie que plusieurs participants indépendants effectuent le même travail ou vérifient les mêmes informations pour plus de sécurité. Si, en réalité, tous ces participants sont contrôlés par le même attaquant, cette vérification supplémentaire perd beaucoup de sa valeur.
Une attaque Sybil ne nécessite pas que chaque fausse identité fonctionne sur un ordinateur distinct. Une seule partie peut piloter plusieurs identités depuis la même infrastructure ou depuis différents environnements techniques. Le cœur de l’attaque est que le réseau traite ces identités comme des participants séparés et indépendants.
Point important : une attaque Sybil ne casse pas automatiquement le mécanisme de consensus d’une blockchain. Cela dépend de la manière dont l’influence est répartie au sein du réseau. Dans certains systèmes, une seule identité peut compter relativement beaucoup, tandis que dans d’autres, l’influence est par exemple liée à la puissance de calcul, au stake ou à d’autres ressources rares.
Quelles sont les conséquences d’une attaque Sybil pour les réseaux blockchain ?
Une attaque Sybil réussie peut avoir plusieurs conséquences. Un attaquant peut par exemple tenter de :
- manipuler des votes ou la gouvernance ;
- recevoir des airdrops, rewards ou subventions supplémentaires ;
- isoler des nodes ou influencer le trafic réseau ;
- manipuler artificiellement des systèmes de réputation ;
- surcharger la capacité du réseau et gêner les utilisateurs normaux ;
- tromper des systèmes qui partent du principe que plusieurs identités correspondent aussi à plusieurs participants indépendants.
Une attaque Sybil peut surtout nuire à la fiabilité et à la disponibilité de la couche peer-to-peer. La couche peer-to-peer est la partie du réseau dans laquelle les nodes transmettent entre eux les transactions, les blocs et d’autres messages. Si un node est principalement connecté à des peers appartenant à un attaquant, des informations importantes peuvent arriver trop tard, de manière incomplète ou ne pas arriver du tout.
Dans un réseau gossip, les nodes diffusent les messages de proche en proche vers d’autres peers. Un grand groupe de peers malveillants peut perturber ce processus en ne relayant pas les messages, en les retardant ou en isolant un nœud cible.
Une telle tentative d’isolement s’appelle une eclipse attack. Dans ce cas, un attaquant essaie d’entourer un node de peers qu’il contrôle lui-même. Le node obtient alors une vision déformée de ce qui se passe sur le réseau, car l’attaquant détermine en grande partie quelles informations parviennent au node.
Les identités Sybil peuvent aussi surcharger les ressources du réseau. Pensez à un grand nombre de connexions, de requêtes ou de messages. Le réseau peut alors devenir plus lent ou les participants normaux peuvent avoir plus de difficultés à prendre part au système. C’est pourquoi les réseaux utilisent souvent des limites sur les messages et les requêtes, et peuvent restreindre ou bloquer les peers qui se comportent mal.
Le problème peut aussi se poser au-dessus d’une blockchain. Une DAO, une dApp ou un autre système qui compte par exemple une adresse comme une voix peut être vulnérable à un abus Sybil. Un attaquant peut alors utiliser plusieurs adresses pour influencer de manière injuste un vote, un score de réputation, une répartition de rewards ou un autre mécanisme.
Une attaque Sybil n’est pas la même chose qu’une attaque des 51%. Dans une attaque des 51%, un attaquant tente de prendre le contrôle d’une majorité d’une ressource pertinente, comme la hashpower ou le stake. Dans une attaque Sybil, il s’agit d’utiliser de nombreuses identités qui sont en réalité contrôlées par la même partie. Créer beaucoup de nodes ou d’adresses ne suffit donc pas, à lui seul, pour prendre le contrôle de la production de blocs ou du consensus d’une blockchain.
Pourquoi les réseaux décentralisés sont-ils vulnérables aux attaques Sybil ?
Les réseaux décentralisés sont surtout vulnérables lorsqu’ils traitent les identités numériques comme des participants indépendants sans seuil ou contrôle supplémentaire. Cela vient du fait que les réseaux ouverts permettent à chacun de rejoindre le système sans qu’une partie centrale ait à confirmer l’identité réelle de la personne.
Ce caractère ouvert est justement un élément important de la crypto. En général, vous pouvez créer une adresse, faire tourner un node ou vous connecter à un protocole sans autorisation. Cela abaisse la barrière d’entrée et aide à limiter la censure, mais cela rend aussi relativement simple pour un attaquant la création d’un grand nombre d’identités numériques supplémentaires.
Une clé publique, une adresse ou un identifiant peer peut montrer qu’une personne contrôle la clé cryptographique associée. En revanche, cela ne prouve pas qu’il y a une personne, une organisation ou un ordinateur distinct derrière chaque clé.
En termes simples, le réseau peut voir qu’il existe cent adresses, mais il ne peut pas déterminer automatiquement si ces cent adresses sont gérées par cent participants différents ou par une seule partie. C’est précisément ce que tente d’exploiter une attaque Sybil.
Les blockchains permissioned ont généralement une barrière plus élevée, car les participants doivent d’abord être autorisés avant d’obtenir certains rôles ou droits. Toutefois, ces réseaux ne sont pas automatiquement protégés contre les attaques Sybil. Si le contrôle d’accès est faible, un attaquant peut malgré tout obtenir plusieurs identités.
Comment les réseaux blockchain peuvent-ils détecter les attaques Sybil ?
Les réseaux blockchain ne peuvent pas toujours reconnaître une attaque Sybil avec certitude, mais ils peuvent signaler des schémas suspects. Pour cela, les nodes peuvent par exemple observer le comportement des peers et la manière dont les connexions sont réparties dans le réseau.
Les signaux suspects peuvent par exemple être :
- l’envoi d’un grand nombre de messages invalides ;
- le fait de ne pas relayer les messages de manière répétée ;
- des violations répétées des règles du réseau ;
- un nombre inhabituellement élevé de requêtes sur une courte période ;
- de nombreux peers se connectant depuis la même adresse IP ou la même infrastructure.
Certains réseaux utilisent pour cela le peer-scoring. Un node attribue localement un score aux autres peers en fonction de leur comportement. Un peer qui relaie des messages valides et respecte les règles du réseau peut obtenir un meilleur score. Un peer qui cause des problèmes à répétition peut, au contraire, être moins bien noté. Selon le protocole, un node peut décider de faire moins confiance à ce peer, de couper la connexion ou d’ignorer les messages futurs.
La colocalisation IP peut aussi constituer un signal. Si un nombre important de peers provient de la même adresse IP ou du même environnement réseau, cela peut indiquer qu’ils sont moins indépendants qu’ils n’en ont l’air. Cela ne constitue toutefois pas une preuve formelle d’une attaque Sybil. Des participants légitimes peuvent utiliser la même infrastructure, tandis qu’un attaquant peut au contraire répartir ses identités sur plusieurs adresses IP et serveurs.
Certains systèmes analysent également la structure d’un réseau de comptes ou de peers. Un grand groupe d’identités qui sont surtout connectées entre elles ou qui se comportent de manière très similaire peut paraître suspect. Là encore, ces schémas ne constituent pas automatiquement une preuve d’attaque.
La détection n’est donc généralement qu’un élément de la protection contre les attaques Sybil. Un réseau doit aussi disposer de mesures pour limiter l’influence des identités suspectes, par exemple en coupant les connexions, en choisissant d’autres peers, en ralentissant les requêtes ou en rendant la participation dépendante d’une ressource rare.
Comment prévenir les attaques Sybil ?
Il n’est généralement pas réaliste de prévenir totalement les attaques Sybil dans un réseau ouvert, mais il est possible de les rendre beaucoup plus difficiles et moins efficaces. C’est ce qu’on appelle la résistance Sybil : la conception du système fait en sorte que de nombreuses identités supplémentaires n’apportent pas automatiquement beaucoup plus d’influence.
La règle principale est simple : ne liez pas l’influence uniquement au nombre de comptes, d’adresses ou de nodes. Il vaut mieux la lier à quelque chose de rare ou difficile à falsifier. Pensez au travail de calcul, au stake, à une admission vérifiée ou à une réputation qui doit être construite sur une période plus longue.
La couche réseau a elle aussi besoin de protection. Parmi les mesures possibles, on peut citer :
- se connecter à un groupe diversifié de peers ;
- évaluer les peers avec le peer-scoring ;
- fixer des limites à la taille des messages et à la vitesse des requêtes ;
- vérifier les messages avant de les relayer ;
- couper les connexions ou attribuer des pénalités en cas d’abus.
Il faut également examiner la conception d’une application. Une règle du type une adresse de wallet, une voix est souvent trop faible pour une décision importante d’une DAO, surtout lorsqu’il est peu coûteux de créer de nouvelles adresses. Un système peut alors utiliser par exemple un poids de vote, une admission ou d’autres seuils.
La protection fonctionne généralement mieux à plusieurs niveaux. Proof of Work peut par exemple aider à protéger le consensus contre les attaques Sybil, mais ne garantit pas automatiquement qu’un node ne se connectera pas surtout à des peers malveillants. Le contrôle d’identité peut limiter le nombre de comptes, mais il entraîne aussi d’autres risques et arbitrages.
Quel rôle jouent Proof of Work et Proof of Stake ?
Proof of Work et Proof of Stake rendent une attaque Sybil contre le consensus beaucoup plus difficile, car l’influence ne dépend pas simplement du nombre d’identités, mais d’une ressource rare et coûteuse.
Avec Proof of Work, l’influence dépend d’un travail de calcul démontrable. En pratique, cela signifie qu’un attaquant ne peut pas se contenter de mille adresses IP ou nodes supplémentaires. Pour obtenir davantage d’influence sur la production de blocs, il faut davantage de hashpower, et cette puissance de calcul coûte de l’argent et de l’énergie.
Avec Proof of Stake, l’influence des validateurs dépend de la quantité de stake qu’ils engagent. Sur Ethereum, les validateurs déposent de l’ETH dans un contrat de dépôt pour participer au consensus. En cas de certains abus protocolaires avérés, une partie de ce stake peut être retirée. Cela s’appelle le slashing.
Répartir la même quantité de stake sur de nombreuses identités de validateurs ne donne pas automatiquement plus de pouvoir de consensus total. L’influence économique reste liée au montant total de stake. Une partie qui détient une grande part de tout le stake peut bien sûr avoir beaucoup d’influence.
PoW et PoS protègent donc surtout la couche de consensus contre les attaques Sybil. Ils ne résolvent pas automatiquement tous les autres risques Sybil. La découverte des peers, le gossip, les systèmes de réputation et les votes fondés sur un compte par voix peuvent encore nécessiter une protection supplémentaire.
Comment les contrôles d’identité et les systèmes de réputation aident-ils ?
Les contrôles d’identité rendent plus difficile la création massive d’identités. Un système peut par exemple associer une identité numérique à une vérification, à un rôle particulier ou à des droits d’accès spécifiques. Cela convient surtout aux blockchains permissioned, où les participants doivent d’abord être autorisés.
Un tel contrôle a toutefois un revers. Les systèmes doivent aussi se protéger contre les inscriptions automatisées massives, les faux documents, les identités synthétiques, le vol d’identité et les images manipulées. En outre, des contrôles d’identité stricts peuvent réduire la confidentialité, l’accessibilité et la résistance à la censure.
Un système de réputation fonctionne différemment. Dans ce cas, un compte n’obtient pas immédiatement beaucoup d’influence, mais la construit grâce à un comportement durable et vérifiable. Un nouveau compte a alors moins de poids qu’un participant qui se comporte de manière fiable depuis longtemps.
Cela n’aide que si une personne ne peut pas simplement recommencer avec un nouveau compte après un mauvais comportement. C’est ce qu’on appelle le whitewashing. Un système de réputation peut rendre cela plus difficile grâce, par exemple, à une mise, à un délai d’attente, à un historique accumulé ou à d’autres signaux qui ne peuvent pas être recréés immédiatement.
La réputation et les relations entre comptes peuvent fournir des signaux utiles, mais elles ne constituent pas une solution complète. La protection dépend de la qualité des données utilisées et de la facilité avec laquelle un attaquant peut manipuler ces signaux.
Exemples d’attaques Sybil dans la crypto
Les attaques Sybil et les abus Sybil apparaissent régulièrement dans la crypto, surtout dans les systèmes où plusieurs comptes peuvent apporter un avantage supplémentaire. C’est notamment le cas pour les airdrops, les rewards et les mécanismes de vote ou de financement.
Un exemple connu est Gitcoin Grants. Gitcoin utilise le quadratic funding, où le nombre de donateurs distincts peut influencer le montant des fonds de matching qu’un projet reçoit. Des attaquants peuvent essayer d’utiliser plusieurs comptes pour faire croire qu’un projet est soutenu par davantage de personnes uniques. Gitcoin a détecté, lors de plusieurs tours de grants, une activité Sybil suspecte et a mis en place des mesures pour donner moins d’influence à ces comptes.
Les airdrops sont également souvent touchés par des comportements Sybil. Pour la distribution de tokens de LayerZero, des wallets contrôlés par la même personne ou organisation ont été activement recherchés en 2024. L’objectif était d’éviter qu’un seul utilisateur reçoive une part disproportionnée de la distribution de tokens via un grand nombre de wallets.
Un exemple concret vient de CyberConnect. Un groupe de plus de 1 700 adresses a été identifié, dont les frais de transaction avaient été financés depuis une seule adresse. Ces adresses ont ensuite pu participer séparément à un programme de rewards. Pour le système, il s’agissait de nombreux participants différents, alors que l’activité indiquait que les adresses étaient pilotées de manière coordonnée.
Ces exemples montrent qu’une attaque Sybil ne vise pas toujours à prendre le contrôle du consensus d’une blockchain. Souvent, un attaquant cherche plutôt à exploiter les règles économiques d’une application en faisant passer une seule partie pour de nombreux utilisateurs différents.
En résumé
Une attaque Sybil repose sur un problème simple mais important : un réseau voit de nombreuses identités numériques, alors qu’en réalité il n’y a peut-être qu’un seul attaquant derrière elles. Cela devient particulièrement dangereux lorsqu’un réseau blockchain, une dApp ou une DAO compte simplement les identités et les traite automatiquement comme indépendantes.
Pour le consensus, Proof of Work et Proof of Stake apportent une résistance Sybil, car l’influence dépend alors de la hashpower ou du stake plutôt que du nombre de nodes ou de comptes. Pour la couche peer-to-peer et pour les applications, d’autres mesures sont également nécessaires, comme des connexions diversifiées entre peers, le peer-scoring, des limites et de bonnes règles en matière de vote et de réputation.
En bref : la participation ouverte reste précieuse pour la crypto, mais elle exige une conception dans laquelle les identités supplémentaires n’apportent pas automatiquement plus d’influence. Plus il est difficile d’obtenir davantage de pouvoir avec de nouveaux comptes, adresses ou nodes peu coûteux, plus un réseau est résistant à une attaque Sybil.