fbpx

Aktualizacja blockchainu bitcoina – powodem luka bezpieczeństwa

Marek Lesiuk
Blockchain Kryptowaluty

3 czerwca bieżącego roku opublikowano kolejną, dwudziestą już aktualizację blockchainu bitcoina. Kod akutalizacji Bitcoin Core 0.20.0 dostępny jest do pobrania.

Aktualizacja skoncentrowana jest na zagadnieniach bezpieczeństwa, a konkretniej – podatności sieci bitcoina na pewien rodzaj ataku, potencjalnie bardzo groźny w skutach. W perspektywie umożliwiałby on bowiem zakłócenie funkcjonowania całego blockchainu, nie wspominając o bardzo przykrych konsekwencjach dla konkretnie zaatakowanych węzłów sieci.

Złowrogi cień „Erberusa”

Słabość ta, wykryta przez grono singapurskich naukowców – Inho Choi, Gi Jun Moon’a, Min Suk Kang’a, Muoi Tran’a oraz Anh V. Vu – opisana została w opublikowanym przez nich w ubiegłym roku eseju. Sposób ataku, nazwany przez nich „Erebus”, po grecku oznacza cień, co w pewien sposób sugeruje jego formę.

Umożliwiać ma nie tylko zakłócanie funkcjonowania fragmentu sieci czy wykradanie jej zasobów, ale przede wszystkim wpływanie na jej zachowanie. W ten sposób, sięgnięcie poń może być atrakcyjne nie tylko dla cyberprzestępców, ale także dla bytów zainteresowanych kontrolowaniem blockchainu, czyli rządów, wielkich koncernów technologicznych czy niepaństwowych organizacji polityczno-militarnych.

Atak składa się z dwóch faz, „infliltracji” i „egzekucji”, z których ta pierwsza trwać może nawet kilka tygodni. Wymaga bowiem przeprowadzenia mapowania sieci połączeń wybranego fragmentu blockchainu. Atakujący wybiera węzeł, który chce obezwładnić, analizuje jego połączenia sieciowe, a następnie sam rozpoczyna komunikację z węzłami, które komunikują się z węzłem wyselekcjonowanym do sparaliżowania.

Ten ostatni pozostaje zupełnie nieświadomy tego procesu, żadne bowiem wrogie działania nie dotykają jego bezpośrednio, nie zostawiają one także śladów. W toku długich interakcji, atakujący zmierza do „przywłaszczenia” sobie sieciowej tożsamości węzła i przekierowania adresowanego doń ruchu na formę realizowaną za swoim pośrednictwem. Gdy to nastąpi, ofiara pozostaje odizolowana od reszty sieci blockchainu.

Rozerwać ogniwa łańcucha blockchainu

To z kolei otwiera cały katalog potencjalnie brzemiennych w skutki reperkusji. Atakujący może bowiem, cały czas nie zostawiając zewnętrznych śladów, dowolnie modyfikować kierowane do ofiary sygnały. Daje mu to kontrolę nie tylko nad transferami danych czy cyberzasobów, pozwalając przejmować jedne i drugie, ale też pozwala na dezorientowanie sieci poprzez wypuszczanie sprzecznych informacji.

Co więcej, dokonanie takich ataków na dużą ilość węzłów stanowiłoby wręcz niebezpieczeństwo dla pracy całości blockchainu (blokując go bądź dowolnie sterując za pomocą nieweryfikowalnych, fałszywych danych) czy też jego rozpadu na mniejsze (i kontrolowane przez atakującego) sieci. Obrona przed tym zagrożeniem byłaby utrudniona, bowiem każdy z zainfekowanych węzłów orientowałby się w sytuacji dopiero wtedy, kiedy byłoby już za późno.

Spekulując teoretycznie, można by ewentualnie wyobrazić sobie próbę kontrataku poprzez analogiczne postępowanie względem atakującego, musiałby on jednak zostać wyprowadzony z innego węzła – co znowu rozbija się o kontrolę komunikacji zaatakowanego przez napastnika (plus oczywiście sam kontratakujący musiałby znać tę metodę, a także tożsamość wrogiego węzła – co z kolei wymagałoby jakiegoś kanału komunikacji z zaatakowanym węzłem w ogóle poza siecią blockchainu).

Publicznych węzłów w sieci bitcoina ma być, wg. autorów „Erebusa”, około 11 tys., zaś tych prywatnych – ponad 100 tys. Podatne na atak miałyby być oczywiście te pierwsze, problematyczne jest to, że za ich pośrednictwem odbywa się zasadnicza część normalnej pracy sieci blockchainu.

Obronić się przed węzłem-renegatem

Odpowiedzią na to zagrożenie ma być właśnie nowo opublikowana aktualizacja. Idea walki z zagrożeniem opiera się na wdrożeniu rozwiązania mapującego sieć połączeń, i wymuszającego dywersyfikację odbiorców komunikacji każdego węzła – czyli uniemożliwiającego w ten sposób ukierunkowanie przepływu całej komunikacji danego węzła przez pojedynczy inny węzeł.

Jak jednak zaznaczają autorzy, nie jest to rozwiązanie, które na pewno zabezpieczy przed podobnymi atakami sieć blockchainu – nie tylko bitcoina, bowiem podobny typ architektury charakteryzuje także sieci niektórych innych kryptowalut, jak dash, zcash czy litecoin – na pewno jednak je utrudni, uniemożliwiając ich przeprowadzenie pojedynczemu węzłowi o wrogich zamiarach.