W tym tygodniu w świecie kryptowalut wydarzyła się rzadka, pozytywna historia, gdzie użytkownik odzyskał swoje środki po utracie 100 ETH z powodu błędu w portfelu.
Odzyskanie środków zawdzięczamy działaniom zespołu Safe Wallet oraz przezorności deweloperów white-hat z Protofire.
100 ETH utracone z powodu błędu portfela — następnie odzyskane w spektakularnej akcji ratunkowej
Incydent miał miejsce, gdy długoletni użytkownik Ethereum, khalo_0x na X (Twitter), próbował przenieść 100 ETH z Ethereum Mainnet na blockchain Base. Użył oficjalnego interfejsu Safe Wallet Bridge.
Przy obecnych kursach, z ETH wycenianym na 2635 USD w momencie pisania, ta transakcja była warta ponad 263 500 USD.

Nieświadomy tego, krytyczny błąd w narzędziu mostu pozwolił na transfer do portfela smart kontraktu, który wydawał się być jego.
Jednak ten portfel kontrolowała inna jednostka.
Problem leżał w użyciu przez Khalo przestarzałej wersji Safe (v1.1.1), wdrożonej w 2020 roku. Ta starsza wersja nie uwzględniała multichain i brakowało jej zabezpieczeń, które są teraz standardem w nowszych wersjach.
W rezultacie, jak się początkowo wydawało, atakujący wcześniej wdrożył kopię adresu portfela Khalo na Base, ale z inną konfiguracją właściciela. Dzięki temu skutecznie przejął środki, gdy tylko zostały one przeniesione. Khalo ubolewał w poście:
„Straciłem oszczędności życia jednym kliknięciem, używając Safe wczoraj w nocy. To po 8 latach trzymania ETH i unikania oszustw. Błąd UX w oficjalnej funkcji Bridge sugerował, że adres docelowy to mój Safe na Base. Nie był.”
Tweet przyciągnął uwagę społeczności kryptowalutowej, w tym zespołu Safe. Budowniczy Tschubotz.eth zbadał sprawę i odkrył, że adres Base kontrolujący przeniesione ETH nie był wcale złośliwy.
Przestarzała wersja portfela otworzyła drzwi do ataku cross-chain
Zamiast tego został wdrożony przez Protofire, firmę deweloperską white-hat, która proaktywnie wdrożyła setki portfeli Safe v1.1.1 na Base, aby zapobiec działaniom atakujących oszustów. Współzałożyciel Safe Lukas Schor wyjasnił:
„W przeciwieństwie do EOAs (Externally Owned Accounts), konta smart, takie jak Safe, są zarządzane przez wdrożony kod smart kontraktu. Technicznie możliwe jest wdrożenie konta smart z tą samą konfiguracją wdrożenia (tych samych sygnatariuszy) na różnych łańcuchach pod tym samym adresem (używając wdrożenia kontrfaktycznego)… Ale ten przypadek był inny… Wersja konta smart z tamtego czasu (v1.1.1.) nie była jeszcze napisana z myślą o multichain, więc możliwe było, aby ktokolwiek wdrożył konto smart na innym łańcuchu z zupełnie inną konfiguracją pod tym samym adresem.”
Po zweryfikowaniu tożsamości Khalo, Protofire szybko zwróciło pełne 100 ETH. Po udanej transakcji testowej nastąpił pełny transfer, rozwiązując kryzys zaledwie kilka godzin po jego rozpoczęciu. Haseeb Qureshi, Partner Zarządzający w Dragonfly powiedział:
“To jedna z najfajniejszych historii o kryptowalutach, jakie widziałem od dłuższego czasu.”
Incydent podkreśla pilną potrzebę lepszych zabezpieczeń użytkowników, gdy portfele kryptowalutowe rozwijają się w ekosystemach multichain.
Zaktualizowana wersja Safe v1.2.0 zawiera teraz zabezpieczenia przed tego typu exploitami, zmieniając sposób obliczania soli CREATE2 podczas wdrażania kontraktu.
Zaktualizowano również narzędzie mostu, aby wydawało ostrzeżenia, gdy pod adresem docelowym znajduje się konfliktujący kod smart kontraktu.
Mimo to, incydent przypomina, że użytkownicy nadal są narażeni na subtelne, nieoczywiste błędy. Schor dodał:
„…wciąż jesteśmy na etapie, gdzie użytkownicy powinni wykonywać transakcje testowe przed przeniesieniem większych środków.”
Mimo początkowej traumy, historia Khalo zakończyła się odzyskaniem jego środków.
Aby zapoznać się z najnowszą analizą rynku kryptowalut od BeInCrypto, kliknij tutaj.
Wyjaśnienie
Wszystkie informacje zawarte na naszej stronie internetowej są publikowane w dobrej wierze i wyłącznie w ogólnych celach informacyjnych. Wszelkie działania podejmowane przez czytelnika w związku z informacjami znajdującymi się na naszej stronie internetowej odbywają się wyłącznie na jego własne ryzyko.
