Około 15 dolarów opłaty sieciowej wystarczyło, by umieścić autoryzację w blockchainie. Nie była to jednak cena za włamanie do Binance ani za dostęp do miliardów. Według dostępnych ustaleń atakujący wcześniej przejęli dostęp do wewnętrznych systemów giełdy i uzyskali ważną autoryzację dla portfela Binance 14. Następnie wykorzystali mechanizm Ethereum EIP-7702, by uruchomić własny kod za pośrednictwem tego portfela.
18
22
Od fałszywej rozmowy o pracę do transferu
W opisie incydentu opublikowanym 3 listopada Binance poinformowało o kampanii socjotechnicznej. Atakujący mieli zwabić inżyniera w fałszywy proces rekrutacyjny i nakłonić go do pobrania złośliwego oprogramowania. Według doniesień opartych na relacji giełdy wykorzystali później także wewnętrzne narzędzie AI, by dotrzeć do systemów związanych z podpisywaniem transakcji.
Kluczowe zdarzenia na Ethereum nastąpiły 29 października:
- 20:20:59 UTC: transakcja zawierała 50 autoryzacji EIP-7702 podpisanych kluczem portfela Binance 14. Jedna z nich pasowała do jego bieżącego licznika transakcji i kierowała go do kodu kontrolowanego przez atakujących.
18
24
- 20:24:23 UTC: 3 minuty i 24 sekundy później pojedyncza transakcja przeniosła z Binance 14 aktywa warte około 2,5 mld dolarów. Wśród nich było około 167 464 ETH i aktywa USDT o wartości około 1,615 mld dolarów, a także inne tokeny.
17
18
Ten transfer odpowiadał za około 40 proc. szerszej kradzieży. Cały incydent — obejmujący portfele Binance na wielu blockchainach — oszacowano na około 6,3–6,4 mld dolarów. Nie należy utożsamiać tej kwoty z samym transferem z Binance 14.
9
22
Co zrobiło EIP-7702 i za co zapłacono 15 dolarów?
EIP-7702 pozwala zwykłemu kontu Ethereum delegować część swojego działania do inteligentnego kontraktu. W tym przypadku mechanizm posłużył do powiązania portfela Binance 14 z kodem kontrolowanym przez atakujących, który mógł wykonać operację zbierającą środki.
13
24
Podawane około 15 dolarów to opłata za umieszczenie autoryzacji w sieci. Kwota ta nie obejmuje kosztu przejęcia komputera pracownika, uzyskania dostępu do infrastruktury podpisującej transakcje ani zdobycia ważnej autoryzacji.
22
Ważna autoryzacja w blockchainie nie dowodzi sama w sobie, że klucz prywatny portfela wyciekł. Binance opisało nieuprawniony dostęp do wewnętrznej usługi podpisującej transakcje, a wstępna analiza Fireblocks nie wskazała dowodów na wyciek kluczy prywatnych.
8
21
Skala incydentu i działania Binance
TRM Labs oszacowało, że z portfeli Binance na dziesięciu blockchainach wypłynęło około 6,36 mld dolarów — większość w ciągu mniej więcej 20 minut od 20:05 UTC. Wstępne ustalenia Binance wskazywały na około 6,34 mld dolarów aktywów objętych incydentem. Są to szacunki dla całej wielołańcuchowej kradzieży, nie tylko dla transferu z Binance 14.
8
9
W chwili publikacji wstępnej aktualizacji Binance podało, że około 2,85 mld dolarów zostało zamrożonych lub przechwyconych. Giełda zastrzegła, że kwota może się zmienić po uzgodnieniu danych i wraz ze zmianami cen rynkowych. „Zamrożone lub przechwycone” nie oznacza automatycznie środków odzyskanych i zwróconych.
8
W reakcji na incydent Binance wstrzymało wypłaty, a następnie zaczęło przywracać je etapami. Osobno informowano o unieważnieniu dotkniętej autoryzacji w blockchainie. To dwa różne działania: wstrzymanie wypłat przez giełdę nie jest tym samym co cofnięcie uprawnień przypisanych do portfela.
11
FBI przypisało później kradzież aktywów o wartości ponad 6 mld dolarów Korei Północnej i określiło tę aktywność jako TraderTraitor. To atrybucja dotycząca szerszego incydentu; opis transakcji wyjaśnia, jak przeprowadzono transfer z portfela Ethereum, ale sam w sobie nie wskazuje sprawców.
1