Eksploit UNCX ujawnia błąd w rozliczaniu udziałów — straty szacowane na 1,5 mln dolarów

ETH
BNB
LINK
SUI
UNI
Podatność inteligentnych kontraktówrozliczanie udziałówImmunefiwykorzystanie lukiVestingstraty
3 godzin temuŹródło: crypto.news
Eksploit UNCX ujawnia błąd w rozliczaniu udziałów — straty szacowane na 1,5 mln dolarów

Exploit Vesting V2 UNCX ujawnił wadę rozliczania udziałów, która pozwoliła atakującym zawyżyć swoje roszczenia do puli tokenów, wyjaśnił szef bezpieczeństwa Immunefi po doniesieniach o wyczerpaniu około 1,5 miliona dolarów w czterech łańcuchach.

Podsumowanie

  • Funkcje wypłaty i anulowania pozostawiły rozliczanie udziałów w stanie nierównowagi, według Magalhãesa.
  • Zgłoszone straty osiągnęły około 1,5 miliona dolarów w czterech sieciach, z udziałem portfeli naśladujących i botów.
  • Magalhães doradził prywatny kontakt z dotkniętymi zespołami przed publicznymi ostrzeżeniami o wypłatach, gdy to możliwe.
  • Dostawcy i dotknięte projekty dzielą odpowiedzialność za dążenie do zwrotu środków, powiedział.

Gonçalo Magalhães, szef bezpieczeństwa w Immunefi, powiedział crypto.news, że kontrakt nie utrzymywał spójności swoich liczników udziałów, gdy użytkownicy wypłacali nabyte tokeny i anulowali pozycje.

Wypłaty UNCX pozostawiły nieaktualną liczbę udziałów

Według relacji Magalhãesa, słabość zaczęła się od funkcji release kontraktu, która pozwala beneficjentowi wypłacić tokeny, które stały się dostępne zgodnie z harmonogramem vestingu.

Po wypłacie funkcja nie odjęła uwolnionych udziałów od licznika pozycji, powiedział. Gdy funkcja anulowania następnie odczytała tę niezmienioną wartość, ponownie odjęła niewykorzystaną część, zniekształcając rozliczanie puli.

Według szefa bezpieczeństwa, połączenie to zawyżyło wartość przypisaną pozostałym udziałom. Atakujący mógł następnie użyć pozycji pozostawionej w puli, aby wypłacić więcej tokenów, niż powinien otrzymać.

Opisując jeden atak, Magalhães powiedział, że exploiter otworzył trzy pozycje vestingu i poświęcił dwie poprzez funkcje wypłaty i anulowania. Pozostała pozycja stała się uprawniona do wypłaty niosącej to, co określił jako „ogromny zysk”.

Zidentyfikował główną wadę jako brak spójnej reguły rozliczania w funkcjach kontraktu.

„Ostatecznie inteligentny kontrakt nie zapewnił, że żadne funkcje nie mogą naruszyć niezmiennika wokół globalnego licznika udziałów.”

Jego wyjaśnienie umieszcza słabość w sposobie, w jaki funkcje aktualizowały i ponownie wykorzystywały salda udziałów. Zabezpieczeniem, które zidentyfikował, była reguła zapewniająca, że każda operacja zachowuje dokładność całkowitej liczby udziałów.

The Crypto Times poinformował 15 października, że Blockaid oszacował straty na około 1,49 miliona dolarów w Ethereum, BNB Chain, Base i Robinhood Chain. Jego relacja przypisała 11 transakcji wyczerpania działalności obejmującej oryginalnego atakującego, portfele naśladujące i boty maksymalnej wartości wyciągalnej, czyli MEV.

Prywatna interwencja poprzedza publiczne ostrzeżenia

Zapytany, jak firmy bezpieczeństwa powinny reagować, gdy exploit pozostaje aktywny, Magalhães powiedział, że dostępna reakcja zależy od protokołu i osób, które mogą interweniować.

„Gdy wszystkie opcje zostaną wyczerpane, niewiele można zrobić poza publicznym wezwaniem użytkowników do natychmiastowego wycofania swoich środków.”

Magalhães nie przedstawił jednego harmonogramu ujawniania odpowiedniego dla każdego incydentu. Jego odpowiedź opisywała raczej sekwencję możliwych interwencji, zaczynając od osób, które mogą zatrzymać atak lub usunąć narażone depozyty.

Relacja z 6 października o niezidentyfikowanym sejfie Base opisywała oddzielną przeszkodę dla prywatnej interwencji. W tym przypadku Magalhães powiedział, że badacz napotkał niepewność prawną, ponieważ operatorzy sejfu byli niezidentyfikowani i nie było jasnego kanału ujawniania. Briefing incydentu oszacował kradzież na około 6 milionów dolarów.

Historie portfeli pomagają śledczym oddzielić uczestników

Dla śledczych badających UNCX, Magalhães powiedział, że historie transakcji zapewniają punkt wyjścia do odróżnienia oryginalnego exploitatora od innych uczestników.

Osoba, która jako pierwsza przeprowadziła atak, zazwyczaj pojawia się wśród najwcześniejszych uczestników ruchu – powiedział. Ustabilizowani użytkownicy mają zapisy wcześniejszych interakcji z protokołem, podczas gdy zautomatyzowane portfele handlowe mogą wykazywać historię spójną z aktywnością botów.

Według Magalhãesa śledczy mogą porównać późniejsze transakcje z sekwencją użyta przez pierwotnego atakującego. Poprzedni klient mógł jednak skopiować exploit, więc istniejąca relacja z protokołem nie rozstrzyga tej kwestii.

„Ostatecznie granica staje się rozmyta i trudna do wyznaczenia.”

Odrębny incydent z 15 września dotyczący 2900 rsETH na Ethereum ilustruje, dlaczego śledczy badają kolejność transakcji. Badacze bezpieczeństwa powiedzieli, że bot Yoink wykonał transakcję przed domniemanym atakującym w tym samym bloku, podczas gdy pierwotna transakcja exploitu zakończyła się niepowodzeniem. Bot otrzymał aktywa o wartości około 7,8 miliona dolarów w tamtym czasie.

W kwestii negocjacji dotyczących odzyskania środków, dyrektor generalny Immunefi, Mitchell Amador, wziął pod uwagę inne zagadnienie autoryzacji w komentarzach na temat Liquid Network opublikowanych 21 września. Powiedział, że badacze powinni korzystać z prywatnych kanałów ujawniania informacji i uzgodnionych warunków nagród, zamiast przejmować aktywa użytkowników i ustalać nagrodę dopiero później.

Dostawcy i projekty powinny dążyć do zwrotu środków

Zapytany o projekty, których tokeny były przechowywane we wspólnej infrastrukturze vestingowej, Magalhães powiedział, że zespoły powinny zlecić własnym pracownikom ds. bezpieczeństwa zbadanie każdego dostawcy, którego wybierają.

Reputacja dostawcy stanowi część tej oceny – powiedział – ale jego rekomendacja umieszczała przegląd techniczny po stronie zespołu wybierającego infrastrukturę.

Odnośnie odpowiedzialności po exploicie, Magalhães powiedział, że zarówno dostawca odpowiedzialny za błąd, jak i projekty, które go wybrały, powinny dążyć do zrekompensowania strat użytkownikom.

„Odpowiedzialność za dążenie do zrekompensowania strat użytkownikom spoczywa zarówno na dostawcy z błędem, jak i na projektach, które zaufały temu dostawcy.”

Jego komentarze opisywały odpowiedzialność za dążenie do zwrotu środków, bez ustalania formuły odszkodowania ani przypisywania procentowego udziału strat którejkolwiek ze stron.

W odniesieniu do audytorów, Magalhães odróżnił przeoczoną lukę w zabezpieczeniach od gwarancji, że sprawdzony kod nie może zawieść. Powiedział, że usługa audytu nie obiecuje „kodu odporniego na błędy”.

The Crypto Times poinformował, że odpowiedź UNCX obejmowała wyższe opłaty mające na celu zniechęcenie do dalszego wykorzystywania oraz koordynację z dotkniętymi zespołami, organami ścigania i SEAL 911. Według tej relacji z 15 października UNCX stwierdził, że jego blokady płynności i starsze kontrakty vestingowe nie zostały naruszone i planował opublikować ustalenia techniczne oraz proponowany plan odzyskiwania środków.