Popularne tematy
#
Bonk Eco continues to show strength amid $USELESS rally
#
Pump.fun to raise $1B token sale, traders speculating on airdrop
#
Boop.Fun leading the way with a new launchpad on Solana.
8 stycznia 2026 roku, w bloku Ethereum 24,191,019, token TRU Truebita załamał się po tym, jak transakcja zmusiła cenę zakupu protokołu do zera. Ten jeden warunek umożliwił nieograniczone mintowanie i szybkie wyjście do ETH.
Szczegóły wkrótce.

Napastnik wywołał getPurchasePrice, następnie buyTRU (0xa0296215), wyemitował więcej TRU niż całkowita podaż, powtórzył cykl, a następnie sprzedał przez sellTRU. Całkowity koszt wyniósł poniżej 40 USD, a transakcja zwróciła 8 535 ETH (około 26 mln USD).
Tylko proxy tokena TRU został zweryfikowany w Sourcify, skompilowany z użyciem Solidity 0.5.3. Ta era poprzedza wbudowane kontrole przepełnienia i wiele funkcji bezpieczeństwa. Stary kod może działać przez lata, a następnie zawieść, gdy pojedynczy przypadek brzegowy spotka się z lepszą analizą.
Zdekompilowaliśmy niezweryfikowany kontrakt zakupu i prześledziliśmy getPurchasePrice do funkcji wewnętrznej (0x1446), która oblicza cenę na podstawie podaży S, rezerwy R i THETA (75 w tym czasie). W większości ścieżki użyto pomocników bezpiecznej matematyki.
Punktem awarii była końcowa ekspresja: v13 = _SafeDiv(v6, v12 + v9). To dodawanie nie było sprawdzane, a Solidity 0.5.3 nie cofa się przy przepełnieniu. Przy wystarczająco dużym wejściu, nastąpiło owinięcie i dzielenie całkowite zwróciło zero.
Nasze pełne opracowanie obejmuje przyczyny i wnioski dotyczące systemów dziedzicznych:
5,22K
Najlepsze
Ranking
Ulubione
