Niewłaściwe użycie adresów krypto spowodowało straty 574,8 mln USD w ETH i BNB, wynika z badania USENIX
Najważniejsze informacje
- •Badanie USENIX Security przypisało ponad 574,8 mln USD strat w kryptowalutach niewłaściwemu użyciu adresów w sieciach Ethereum i BNB Smart Chain.
- •Badacze zidentyfikowali 65 340 przypadków adresów wysokiego ryzyka związanych ze stratami rzędu około 126 983 ETH i 17 727 BNB, przy deklarowanej ogólnej precyzji wykrywania wynoszącej 99,11%.
- •Nadużycia dotyczące kont zewnętrznych (EOA), obejmujące adresy z ujawnionymi kluczami prywatnymi, odpowiadały za straty w wysokości około 104 245 ETH i 9 045 BNB, a analiza objęła około 10 milionów adresów kandydujących i 16 milionów ujawnionych kluczy.
- •Badanie udokumentowało wcześniej nieujawnione wektory ataków, w których atakujący wykorzystują błędy w interakcjach z adresami w celu wydobycia środków.
- •Ponad 85% zebranych adresów nie przyciągnęło w czasie badania interakcji związanych z nadużyciami, jednak badacze ostrzegli, że nadal stanowią potencjalne ryzyko, i zalecili weryfikowanie adresów względem oficjalnej dokumentacji i eksploratorów bloków przed dokonaniem transakcji.

Badanie zaprezentowane na konferencji USENIX Security — recenzowanym akademickim wydarzeniu poświęconym bezpieczeństwu komputerowemu — udokumentowało ponad 574,8 mln USD strat w kryptowalutach spowodowanych niewłaściwym użyciem adresów w sieciach Ethereum i BNB Smart Chain.
Analizując aktywność w blockchainie, badacze zbadali, w jaki sposób użytkownicy wchodzą w interakcje z niebezpiecznymi adresami. Zidentyfikowali 65 340 przypadków adresów wysokiego ryzyka, które wiązały się ze stratami w wysokości około 126 983 ETH i 17 727 BNB. Według raportu badania ogólna precyzja wykrywania wyniosła 99,11%.
Jak niewłaściwe użycie adresów generuje straty
Badacze klasyfikują niewłaściwe użycie adresów w dwóch głównych kategoriach: nadużycia dotyczące kont kontraktów (Contract Account) oraz nadużycia dotyczące kont zewnętrznych (Externally Owned Account, EOA).
Nadużycia dotyczące kont kontraktów występują, gdy użytkownicy błędnie traktują adres niebędący kontraktem jako adres kontraktu inteligentnego. Nadużycia EOA obejmują interakcje z adresami, których klucze prywatne zostały ujawnione. Obie kategorie leżą u podstaw modelu kont Ethereum, w którym konta kontraktów przechowują i wykonują kod, natomiast konta EOA są kontrolowane przez klucze prywatne — rozróżnienie to jest niewidoczne w samym ciągu znaków adresu. Ethereum i BNB Smart Chain to sieci kompatybilne z EVM, korzystające z tego samego szesnastkowego formatu adresów, co oznacza, że pozornie prawidłowy adres nie mówi nic o tym, czy zawiera kod, kto nim zarządza ani jak się zachowa.
Badanie opierało się na około 10 milionach adresów kandydujących zebranych z GitHuba i Stack Exchange oraz około 16 milionach ujawnionych kluczy prywatnych. Publiczne repozytoria kodu i fora dla programistów na przestrzeni lat wielokrotnie ujawniały dostępne publicznie dane uwierzytelniające, co czyni je powracającym źródłem dla badań bezpieczeństwa nad wyciekami kluczy. Następnie badacze prześledzili powiązane transakcje w sieciach Ethereum i BNB Smart Chain.
Ujawnione adresy stanowią poważne zagrożenie dla bezpieczeństwa
Badacze ustalili, że nadużycia EOA odpowiadały za straty w wysokości około 104 245 ETH i 9 045 BNB. Wyniki wskazują, że użytkownicy często wchodzą w interakcje z ujawnionymi adresami, nie zdając sobie sprawy, że adresy te mogą być kontrolowane przez atakujących.
Badanie zidentyfikowało również wcześniej nieujawnione wektory ataków. Atakujący mogą wykorzystać błędy w interakcjach z adresami, aby wydobyć środki, przekształcając pozornie zwykłą aktywność w blockchainie w okazję do kradzieży.
Badacze ostrzegają przed trwającymi zagrożeniami
Ponad 85% zebranych adresów nie przyciągnęło w czasie badania interakcji związanych z nadużyciami. Mimo to badacze ostrzegli, że te uśpione adresy nadal mogą stwarzać ryzyko, jeśli użytkownicy wejdą z nimi w nieprawidłowe interakcje.
Wyniki wskazują na szerszą słabość w zakresie bezpieczeństwa blockchaina: użytkownicy często polegają na adresach, nie rozumiejąc w pełni, czy reprezentują one prawdziwe kontrakty ani czy ich klucze prywatne pozostają bezpieczne. Kodowanie sumy kontrolnej z użyciem wielkich i małych liter w Ethereum (EIP-55) pomaga wykryć błędy literowe w adresie, ale nie dostarcza żadnej informacji o tym, czy adres jest wiarygodny lub czy jego klucz został skompromitowany.
Według badaczy lepsza weryfikacja adresów i silniejsza świadomość bezpieczeństwa mogłyby zmniejszyć ryzyko. W praktyce oznacza to kontrole, które użytkownicy mogą już teraz wykonywać, takie jak potwierdzanie adresów kontraktów względem oficjalnej dokumentacji projektu i eksploratorów bloków przed dokonaniem transakcji. Ich wyniki pokazują także, że bezpieczeństwo adresów w blockchainie wykracza poza ochronę kluczy prywatnych i wymaga od użytkowników zrozumienia, jak adresy zachowują się w różnych sieciach.