Co się stało?
Według raportu The Defiant we wtorek na Ethereum doszło do próby exploita wymierzonego w portfel typu Safe. Zanim jednak atakujący zdążył wyprowadzić łup, transakcję wyprzedził tak zwany bot MEV oznaczany jako Yoink.
Firma zajmująca się bezpieczeństwem blockchaina PeckShield opisała zdarzenie jako exploit w płynnym tokenie stakingowym rsETH o wartości około 7,81 miliona dolarów. Zapisy onchain cytowane przez The Defiant pokazują, że transakcja Yoinka przyjęła 2900 rsETH i odesłała dalej 2882,37 rsETH.
Co oznaczają kluczowe pojęcia?
Aby ta historia miała sens, trzeba wyjaśnić kilka terminów:
- MEV (Maximal Extractable Value): wartość, którą można uzyskać poprzez przestawienie, wstawienie lub usunięcie transakcji w bloku. Boty automatycznie wyszukują tę wartość.
- Front-running (wyprzedzanie): bot widzi oczekującą transakcję w mempoolu (kolejce niepotwierdzonych transakcji) i wstawia przed nią własną transakcję z wyższą opłatą tak, aby została wykonana wcześniej.
- rsETH: płynny token restakingowy, który reprezentuje roszczenie do stakowanego ETH.
- Safe wallet: portfel multisig (wymaga wielu podpisów), powszechnie używany przez projekty i zespoły do zarządzania środkami.
Jak dokładnie bot wyprzedził atak?
Szczegółowa mechanika, czyli dlaczego portfel Safe był podatny i jak dokładnie Yoink przechwycił i wyprzedził transakcję, nie jest w opublikowanych źródłach rozpisana do poziomu poszczególnych kroków. To, co jest udokumentowane onchain, to ruchy tokenów: bot otrzymał 2900 rsETH i odesłał dalej 2882,37 rsETH. Różnica (około 17,63 rsETH) jest zgodna z tym, jak ten typ botów zazwyczaj zatrzymuje część łupu, jednoznacznego celu tej różnicy źródła jednak nie potwierdzają.
W praktyce przy tak zwanych front-runach "whitehat" lub przypadkowych zdarza się, że bot przechwytuje środki wcześniej niż atakujący. Czy w tym przypadku chodziło o ratowanie środków, czy tylko o innego aktora, który sam odprowadził łup dla siebie, ze źródeł jednoznacznie nie wynika.
Co na razie nie jest znane?
W skrócie, wiele rzeczy:
- Kto stał za pierwotnym exploitem. Tożsamość atakującego nie została potwierdzona.
- Kto obsługuje Yoinka i jaki był jego zamiar.
- Gdzie ostatecznie trafią środki i czy wrócą do pierwotnego właściciela.
- Konkretna podatność, która wystawiła portfel Safe na atak.
To są dokładnie te pytania, które po podobnych incydentach zwykle uzupełnia dopiero późniejsza analiza firm bezpieczeństwa lub oświadczenie dotkniętego projektu.
Na co uważać przy tego typu zdarzeniach?
Przypadek jest podręcznikowym przykładem tego, jak mempool na Ethereum funkcjonuje jako przestrzeń publiczna: oczekujące transakcje są widoczne, a boty aktywnie je śledzą. Gdy przy jakimś protokole lub portfelu pojawia się wartościowy exploit, nie jest niczym niezwykłym, że do gry wchodzi strona trzecia i odprowadza łup wcześniej niż pierwotny atakujący.
Przy liczbach dotyczących podobnych incydentów obowiązuje jedna zasada: pierwsze oszacowanie szkody (tutaj 7,81 miliona dolarów według PeckShield) może zostać doprecyzowane, gdy tylko uda się prześledzić pełny zakres ruchów i wartość rynkową dotkniętych tokenów w momencie ataku. charliedesk będzie śledził tę kwotę oraz los środków i w razie potrzeby dokona korekty, jeśli późniejsze dane onchain pokażą inny obraz.

