Czym jest Sybil Attack i jak działa ten atak w sieciach blockchain?

Czym jest Sybil Attack i jak działa ten atak w sieciach blockchain?

Czym jest Sybil Attack?

Sybil Attack to atak, w którym jedna osoba lub grupa podszywa się pod wielu różnych uczestników sieci. Atakujący tworzy na przykład wiele kont, adresów portfeli, węzłów lub identyfikatorów peer i próbuje w ten sposób uzyskać większy wpływ, niż miałby pojedynczy uczestnik.

Problem nie dotyczy więc wyłącznie liczby kont. Chodzi o to, że sieć uznaje wszystkie te tożsamości za niezależne, podczas gdy w rzeczywistości są one kontrolowane przez tę samą stronę. Jeśli system traktuje każdą tożsamość jako osobny głos, peer lub wiarygodnego uczestnika, atakujący może to wykorzystać.

Termin Sybil Attack stał się znany dzięki badaniom z 2002 roku nad sieciami peer-to-peer. Sybil Attack nie został więc stworzony specjalnie dla blockchaina, ale w świecie krypto ma duże znaczenie. Wiele blockchainów i dApps to otwarte systemy, w których stosunkowo łatwo tworzyć nowe tożsamości cyfrowe lub adresy. Jeśli sieć nie kontroluje w inny sposób, ile wpływu może mieć jedna strona, może to stanowić ryzyko.

Przykład: Załóżmy, że głosowanie w dApp działa według zasady jeden adres portfela, jeden głos. Jeśli nie ma dodatkowych kontroli, jedna osoba może utworzyć sto adresów i oddać sto głosów. Dla systemu wygląda to jak stu różnych uczestników, choć w rzeczywistości są oni kontrolowani przez tę samą osobę.


Najważniejsze informacje

  • W przypadku Sybil Attack jeden atakujący podszywa się pod wielu niezależnych uczestników.
  • Atak działa przede wszystkim przeciwko systemom, które po prostu liczą konta, adresy lub węzły.
  • Atakujący może w ten sposób manipulować na przykład głosowaniami, rewardami, reputacją lub połączeniami peer.
  • Duża liczba dodatkowych tożsamości nie daje automatycznie większej mocy konsensusu w Proof of Work i Proof of Stake.
  • Sieci ograniczają to ryzyko między innymi przez koszty, stake, peer-scoring i kontrolę dostępu.

Jak działa Sybil Attack?

Sybil Attack zwykle zaczyna się od tworzenia lub gromadzenia wielu pseudonimowych tożsamości. Pseudonimowy oznacza tutaj, że cyfrowa tożsamość, taka jak identyfikator węzła, konto lub adres portfela, nie ujawnia automatycznie, jaka osoba lub organizacja stoi za nią.

Następnie atakujący sprawia, że te tożsamości jednocześnie uczestniczą w sieci. Celem jest uzyskanie dużego wpływu na coś, co system mierzy lub rozdziela per tożsamość. Może to dotyczyć na przykład połączeń sieciowych, dostępu do określonych zasobów, głosów lub innych form uczestnictwa.

W praktyce może to wyglądać na przykład tak, że atak dotyczy połączeń peer. Węzeł często łączy się z innymi węzłami, zwanymi też peerami. Jeśli atakujący udostępni wiele kontrolowanych przez siebie peerów, węzeł może ostatecznie połączyć się głównie z nimi. Atakujący może wtedy na przykład spowalniać ruch sieciowy, filtrować go albo sprawić, że węzeł otrzyma zniekształcony obraz tego, co dzieje się w reszcie sieci.

Może to być również problem przy redundancji. Redundancja oznacza, że wielu niezależnych uczestników wykonuje tę samą pracę lub sprawdza te same informacje dla większej pewności. Jeśli jednak wszyscy ci uczestnicy są w rzeczywistości kontrolowani przez tego samego atakującego, taka dodatkowa kontrola jest znacznie mniej wartościowa.

Sybil Attack nie wymaga, aby każda fałszywa tożsamość działała na osobnym komputerze. Jedna strona może sterować wieloma tożsamościami z tej samej infrastruktury lub z różnych środowisk technicznych. Istotą ataku jest to, że sieć traktuje te tożsamości jako oddzielnych, niezależnych uczestników.

Ważne: Sybil Attack nie łamie automatycznie mechanizmu konsensusu blockchaina. Zależy to od tego, jak rozdzielany jest wpływ w sieci. W niektórych systemach jedna tożsamość może mieć stosunkowo duże znaczenie, podczas gdy w innych wpływ jest powiązany na przykład z mocą obliczeniową, stake lub innymi rzadkimi zasobami.

Jakie skutki może mieć Sybil Attack dla sieci blockchain?

Udany Sybil Attack może mieć różne skutki. Atakujący może na przykład próbować:

  • manipulować głosowaniami lub governance;
  • otrzymać dodatkowe airdropy, rewardy lub subsydia;
  • izolować węzły lub wpływać na ruch sieciowy;
  • sztucznie manipulować systemami reputacji;
  • obciążać przepustowość sieci i utrudniać działanie zwykłym użytkownikom;
  • wprowadzać w błąd systemy, które zakładają, że wiele tożsamości oznacza wielu niezależnych uczestników.

Sybil Attack może szczególnie osłabić wiarygodność i dostępność warstwy peer-to-peer. Warstwa peer-to-peer to część sieci, w której węzły przekazują sobie nawzajem transakcje, bloki i inne komunikaty. Jeśli węzeł jest połączony głównie z peerami atakującego, ważne informacje mogą docierać z opóźnieniem, niepełne albo wcale.

W sieci gossip węzły rozprzestrzeniają komunikaty dalej do kolejnych peerów. Duża grupa złośliwych peerów może zakłócić ten proces, na przykład nie przekazując komunikatów dalej, opóźniając je lub izolując wybrany węzeł.

Taka próba izolacji nazywa się eclipse attack. Atakujący próbuje wtedy otoczyć węzeł peerami, które sam kontroluje. Węzeł otrzymuje przez to zniekształcony obraz tego, co dzieje się w sieci, ponieważ atakujący w dużej mierze decyduje o tym, jakie informacje do niego docierają.

Tożsamości Sybil mogą też obciążać zasoby sieciowe. Chodzi na przykład o dużą liczbę połączeń, żądań lub wiadomości. W efekcie sieć może działać wolniej, a zwykli uczestnicy mogą mieć trudności z udziałem. Dlatego sieci często stosują limity wiadomości i żądań, a peerów zachowujących się niewłaściwie można ograniczać lub blokować.

Problemy mogą pojawić się także na poziomie aplikacji działającej na blockchainie. DAO, dApp lub inny system, który na przykład liczy jeden adres jako jeden głos, może być podatny na nadużycia Sybil. Atakujący może wtedy użyć wielu adresów, aby nieuczciwie wpłynąć na głosowanie, ocenę reputacji, podział rewardów lub inny mechanizm.

Sybil Attack nie jest tym samym co atak 51%. W ataku 51% atakujący próbuje przejąć kontrolę nad większością istotnego zasobu, takiego jak hashpower lub stake. W Sybil Attack chodzi o używanie wielu tożsamości, które w rzeczywistości są kontrolowane przez tę samą stronę. Samo tworzenie wielu węzłów lub adresów nie wystarcza więc, aby przejąć produkcję bloków lub konsensus blockchaina.

Dlaczego zdecentralizowane sieci są podatne na Sybil Attacks?

Sieci zdecentralizowane są szczególnie podatne wtedy, gdy traktują tożsamości cyfrowe jako niezależnych uczestników bez dodatkowego progu lub kontroli. Wynika to z tego, że otwarte sieci pozwalają każdemu dołączyć bez konieczności potwierdzania przez jedną centralną stronę, kim ktoś naprawdę jest.

Taki otwarty charakter jest właśnie ważnym elementem krypto. Zwykle można bez pozwolenia utworzyć adres, uruchomić węzeł lub połączyć się z protokołem. Obniża to próg wejścia i pomaga ograniczać cenzurę, ale jednocześnie ułatwia atakującemu tworzenie wielu dodatkowych tożsamości cyfrowych.

Klucz publiczny, adres lub identyfikator peer może potwierdzić, że ktoś kontroluje powiązany klucz kryptograficzny. Nie dowodzi jednak, że za każdym kluczem stoi unikalna osoba, osobna organizacja lub osobny komputer.

Mówiąc prosto: sieć może widzieć, że istnieje sto adresów, ale nie jest w stanie sama z siebie ustalić, czy sto adresów jest kontrolowanych przez stu różnych uczestników, czy przez jedną stronę. Właśnie to próbuje wykorzystać Sybil Attack.

Blockchainy permissioned zwykle mają wyższy próg wejścia, ponieważ uczestnicy muszą zostać najpierw dopuszczeni, zanim otrzymają określone role lub uprawnienia. Mimo to także te sieci nie są automatycznie chronione przed Sybil Attacks. Jeśli kontrola dostępu jest słaba, atakujący może nadal zdobyć wiele tożsamości.

Jak sieci blockchain mogą wykrywać Sybil Attacks?

Sieci blockchain nie zawsze mogą z całą pewnością wykryć Sybil Attack, ale mogą sygnalizować podejrzane wzorce. W tym celu węzły mogą na przykład analizować zachowanie peerów oraz sposób, w jaki połączenia są rozłożone w sieci.

Podejrzane sygnały mogą obejmować na przykład:

  • wysyłanie wielu nieprawidłowych wiadomości;
  • wyjątkowo częste nieprzekazywanie wiadomości dalej;
  • wielokrotne łamanie zasad sieci;
  • nietypowo dużą liczbę żądań w krótkim czasie;
  • wiele peerów łączących się z tego samego adresu IP lub tej samej infrastruktury.

Niektóre sieci używają do tego peer-scoring. Węzeł lokalnie ocenia inne peery na podstawie ich zachowania. Peer, który przekazuje poprawne wiadomości i przestrzega zasad sieci, może otrzymać lepszą ocenę. Peer, który wielokrotnie powoduje problemy, może zostać oceniony niżej. W zależności od protokołu węzeł może uznać takiego peera za mniej wiarygodnego, zerwać połączenie albo ignorować przyszłe wiadomości.

Sygnałem może być także IP-colocation. Jeśli wyjątkowo wiele peerów pochodzi z tego samego adresu IP lub tego samego środowiska sieciowego, może to wskazywać, że są mniej niezależne, niż się wydaje. Nie jest to jednak twardy dowód na Sybil Attack. Uczciwi uczestnicy mogą korzystać z tej samej infrastruktury, a atakujący może z kolei rozproszyć swoje tożsamości na wiele adresów IP i serwerów.

Niektóre systemy analizują również strukturę sieci kont lub peerów. Duża grupa tożsamości, które głównie łączą się ze sobą lub zachowują się bardzo podobnie, może budzić podejrzenia. Takie wzorce również nie są automatycznym dowodem ataku.

Dlatego wykrywanie jest zwykle tylko jednym z elementów ochrony przed Sybil. Sieć musi też mieć środki ograniczające wpływ podejrzanych tożsamości, na przykład przez zrywanie połączeń, wybór innych peerów, spowalnianie żądań lub uzależnianie udziału od rzadkiego zasobu.

Jak można zapobiegać Sybil Attacks?

Całkowite zapobieganie Sybil Attacks w otwartej sieci zwykle nie jest realistyczne, ale można sprawić, że będą znacznie trudniejsze i mniej skuteczne. Nazywa się to Sybil-resistance: projekt systemu sprawia, że wiele dodatkowych tożsamości nie daje automatycznie dużego dodatkowego wpływu.

Najważniejsza zasada jest prosta: nie należy wiązać wpływu wyłącznie z liczbą kont, adresów lub węzłów. Lepiej powiązać go z czymś rzadkim lub trudnym do sfałszowania. Może to być na przykład praca obliczeniowa, stake, zweryfikowane dopuszczenie lub reputacja budowana przez dłuższy czas.

Ochrony potrzebuje też warstwa sieciowa. Możliwe środki to na przykład:

  • łączenie się z różnorodną grupą peerów;
  • ocenianie peerów za pomocą peer-scoring;
  • wprowadzanie limitów rozmiaru wiadomości i szybkości żądań;
  • sprawdzanie wiadomości przed ich dalszym przekazaniem;
  • zrywanie połączeń lub nakładanie kar za nadużycia.

Trzeba też przyjrzeć się projektowi samej aplikacji. Zasada jeden adres portfela, jeden głos jest często zbyt słaba przy ważnych decyzjach DAO, zwłaszcza gdy tworzenie nowych adresów jest tanie. System może wtedy stosować na przykład wagę głosu, dopuszczenie lub inne progi.

Ochrona działa zwykle najlepiej na kilku poziomach. Proof of Work może na przykład pomóc chronić konsensus przed Sybil Attacks, ale nie zapobiega automatycznie sytuacji, w której węzeł łączy się głównie ze złośliwymi peerami. Kontrola tożsamości może ograniczyć liczbę kont, ale wiąże się też z innymi ryzykami i kompromisami.

Jaką rolę odgrywają Proof of Work i Proof of Stake?

Proof of Work i Proof of Stake znacznie utrudniają Sybil Attack przeciwko konsensusowi, ponieważ wpływ nie zależy tam po prostu od liczby tożsamości, lecz od rzadkiego i kosztownego zasobu.

W Proof of Work wpływ zależy od możliwej do udowodnienia pracy obliczeniowej. W praktyce oznacza to, że atakującemu nie wystarczy tysiąc dodatkowych adresów IP lub węzłów. Aby uzyskać większy wpływ na produkcję bloków, potrzebna jest większa hashpower, a ta moc obliczeniowa kosztuje pieniądze i energię.

W Proof of Stake wpływ validatorów zależy od ilości stake, którą angażują. W Ethereum validatorzy wpłacają ETH do kontraktu depozytowego, aby uczestniczyć w konsensusie. W przypadku określonych form możliwego do udowodnienia nadużycia protokołu część tego stake może zostać odebrana. Nazywa się to slashing.

Podzielenie tej samej ilości stake między wiele identyfikatorów validatorów nie daje automatycznie większej łącznej mocy konsensusu. Wpływ ekonomiczny nadal pozostaje powiązany z całkowitą ilością stake. Strona posiadająca dużą część całego stake może oczywiście mieć duży wpływ.

PoW i PoS chronią więc przede wszystkim warstwę konsensusu przed Sybil Attacks. Nie rozwiązują automatycznie wszystkich innych ryzyk Sybil. Odkrywanie peerów, gossip, systemy reputacji i głosowania oparte na zasadzie jedno konto, jeden głos nadal mogą wymagać dodatkowej ochrony.

Jak pomagają kontrole tożsamości i systemy reputacji?

Kontrole tożsamości utrudniają tworzenie wielu identyfikatorów bez ograniczeń. System może na przykład powiązać tożsamość cyfrową z weryfikacją, określoną rolą lub konkretnymi uprawnieniami dostępu. Szczególnie dobrze sprawdza się to w blockchainach permissioned, gdzie uczestnicy muszą zostać najpierw dopuszczeni.

Taka kontrola ma jednak swoją cenę. Systemy muszą też chronić się przed masową automatyczną rejestracją, fałszywymi dokumentami, syntetycznymi tożsamościami, kradzieżą tożsamości i zmanipulowanym materiałem wideo. Ponadto surowe kontrole tożsamości mogą ograniczać prywatność, dostępność i odporność na cenzurę.

System reputacji działa inaczej. Konto nie otrzymuje od razu dużego wpływu, lecz buduje go poprzez długotrwałe i możliwe do zweryfikowania dobre zachowanie. Nowe konto ma wtedy mniejsze znaczenie niż uczestnik, który od dłuższego czasu zachowuje się wiarygodnie.

Pomaga to tylko wtedy, gdy ktoś po złym zachowaniu nie może po prostu zacząć od nowa z nowym kontem. Nazywa się to whitewashing. System reputacji może utrudnić takie działanie na przykład przez wymagany wkład, okres oczekiwania, zbudowaną historię lub inne sygnały, których nie da się łatwo odtworzyć.

Reputacja i relacje między kontami mogą dostarczać użytecznych sygnałów, ale nie są pełnym rozwiązaniem. Skuteczność ochrony zależy od jakości używanych danych oraz od tego, jak łatwo atakujący może manipulować tymi sygnałami.

Przykłady Sybil Attacks w krypto

Sybil Attacks i nadużycia Sybil pojawiają się w krypto dość często, zwłaszcza w systemach, w których wiele kont może przynieść dodatkową korzyść. Widać to na przykład przy airdropach, rewardach oraz mechanizmach głosowania lub finansowania.

Znanym przykładem jest Gitcoin Grants. Gitcoin wykorzystuje quadratic funding, w którym liczba oddzielnych darczyńców może wpływać na to, ile środków matching funds otrzyma projekt. Atakujący mogą próbować używać wielu kont, aby sprawić wrażenie, że projekt wspiera więcej unikalnych osób. Gitcoin w różnych rundach grantowych wykrywał podejrzaną aktywność Sybil i wprowadzał środki ograniczające wpływ takich kont.

Do Sybil-owego zachowania dochodzi też często przy airdrops. Przy dystrybucji tokenów LayerZero w 2024 roku aktywnie wyszukiwano portfele kontrolowane przez tę samą osobę lub organizację. Celem było zapobieżenie sytuacji, w której jeden użytkownik otrzymałby nieproporcjonalnie dużą część dystrybucji tokenów dzięki wielu portfelom.

Konkretny przykład pochodzi od CyberConnect. Znaleziono tam grupę ponad 1 700 adresów, których opłaty transakcyjne były finansowane z jednego adresu. Adresy mogły następnie osobno uczestniczyć w programie rewardowym. Dla systemu wyglądały jak wielu różnych uczestników, podczas gdy aktywność wskazywała, że adresy były sterowane wspólnie.

Te przykłady pokazują, że Sybil Attack nie zawsze ma na celu przejęcie konsensusu blockchaina. Często atakujący próbuje raczej nadużyć zasad ekonomicznych aplikacji, sprawiając, że jedna strona wygląda jak wielu różnych użytkowników.

Podsumowanie

Sybil Attack sprowadza się do jednego prostego, ale ważnego problemu: sieć widzi wiele tożsamości cyfrowych, podczas gdy w rzeczywistości może za nimi stać tylko jeden atakujący. Jest to szczególnie niebezpieczne wtedy, gdy sieć blockchain, dApp lub DAO po prostu liczy tożsamości i automatycznie traktuje je jako niezależne.

W przypadku konsensusu Proof of Work i Proof of Stake zapewniają odporność na Sybil, ponieważ wpływ zależy tam od hashpower lub stake, a nie od liczby węzłów czy kont. Dla warstwy peer-to-peer i aplikacji potrzebne są jednak także inne środki, takie jak zróżnicowane połączenia peer, peer-scoring, limity oraz dobre zasady dotyczące głosowania i reputacji.

Krótko mówiąc: otwarty udział pozostaje ważny dla krypto, ale wymaga projektu, w którym dodatkowe tożsamości nie dają automatycznie dodatkowego wpływu. Im trudniej uzyskać większą władzę dzięki tanim nowym kontom, adresom lub węzłom, tym lepiej sieć radzi sobie z Sybil Attack.

O Finst

Finst to wiodąca platforma kryptowalutowa w Holandii, oferująca bardzo niskie opłaty transakcyjne, bezpieczeństwo klasy instytucjonalnej oraz szeroki zakres usług crypto, takich jak trading, przechowywanie aktywów, staking oraz wpłaty i wypłaty fiat. Finst, założona przez byłych kluczowych członków zespołu DEGIRO, jest autoryzowana jako dostawca usług w zakresie kryptoaktywów na mocy MiCAR przez Holenderski Urząd ds. Rynków Finansowych (AFM) i obsługuje klientów detalicznych oraz instytucjonalnych w 30 krajach europejskich.

Platforma krypto dla wszystkich inwestorów

Niezależnie od tego, czy aktywnie handlujesz, czy inwestujesz długoterminowo, Finst pomaga Ci rozwijać portfel krypto z pewnością i spokojem.

Zarejestruj się