Euler Finance Hack Postmortem ujawnia lukę w zabezpieczeniach sprzed 8 miesięcy

Sekcja zwłok Euler Finance wykorzystująca lukę w zabezpieczeniach pożyczki błyskawicznej ujawniła, że ​​luka w zabezpieczeniach leżąca u źródła exploita utrzymywała się w łańcuchu przez 8 miesięcy. 

W wyniku tej luki Euler Finance stracił w tym tygodniu 200 milionów dolarów. 

Osiem-miesięczna luka w zabezpieczeniach 

Partner audytowy Euler Finance, firma Omniscia, opublikowała szczegółowy raport z sekcji zwłok analizujący lukę w zabezpieczeniach wykorzystaną przez hakerów na początku tygodnia. Według raportu z sekcji zwłok, luka w zabezpieczeniach wynikała z nieprawidłowego mechanizmu darowizn protokołu zdecentralizowanego finansowania, który umożliwiał dokonywanie darowizn bez odpowiedniej kontroli stanu zdrowia. Kod został wprowadzony w eIP-14, protokole, który wprowadził szereg zmian w ekosystemie Euler Finance. 

Euler Finance umożliwia użytkownikom tworzenie sztucznej dźwigni poprzez bicie i deponowanie aktywów w tej samej transakcji. Mechanizm ten umożliwił użytkownikom wybicie większej liczby tokenów niż zabezpieczenie posiadane przez samą Euler Finance. Nowy mechanizm umożliwił użytkownikom przekazanie swojego salda do salda rezerwowego tokena, z którym przeprowadzali transakcje. Nie udało się jednak przeprowadzić żadnej kontroli stanu konta, na którym dokonano darowizny. 

Jak wykorzystano lukę 

Darowizna spowodowałaby, że dług użytkownika (DToken) pozostałby niezmieniony. Jednak saldo ich kapitału własnego (EToken) spadłoby. W tym momencie likwidacja konta użytkownika doprowadziłaby do pozostawienia części Dtokenów, co doprowadziłoby do powstania nieściągalnych długów. Ta wada pozwoliła atakującemu stworzyć nadmiernie lewarowaną pozycję, a następnie samodzielnie ją zlikwidować w tym samym bloku, sztucznie powodując, że „zejdzie ona pod wodę”.

Kiedy haker sam się likwiduje, stosuje się zniżkę procentową, co powoduje, że likwidator ponosi znaczną część jednostek EToken ze zniżką i gwarantuje, że będą „nad wodą”, zaciągając dług, który odpowiadałby nabytemu zabezpieczeniu. Doprowadziłoby to do naruszenia ze złym długiem (DTokens) i likwidatora, który ma nadmierne zabezpieczenie swojego długu. 

Omniscia stwierdziła, że ​​funkcja, która leżała u podstaw luki, nie była objęta żadnymi audytami przeprowadzonymi przez firmę. Z przeprowadzonej analizy wynika, że ​​za weryfikację przedmiotowego kodu odpowiedzialny był zewnętrzny audyt, który następnie został zatwierdzony. Funkcja donateToReserves została poddana audytowi w lipcu 2022 roku przez Zespół Sherlocka. Euler i Sherlock potwierdzili również, że ten pierwszy miał aktywną polisę ubezpieczeniową z Sherlockiem, gdy wystąpił exploit. 

Euler Finance współpracuje z grupami bezpieczeństwa 

W ślad za exploitem Euler Finanse stwierdził, że protokół współpracuje z innymi grupami bezpieczeństwa w celu przeprowadzenia dalszych audytów. Ponadto stwierdził, że skontaktował się również z funkcjonariuszami i agencjami organów ścigania w celu odzyskania skradzionych środków. 

„Jesteśmy zdruzgotani skutkami tego ataku na użytkowników protokołu Euler i będziemy nadal współpracować z naszymi partnerami w zakresie bezpieczeństwa, organami ścigania i szerszą społecznością, aby rozwiązać ten problem najlepiej jak potrafimy. Dziękuję bardzo za wsparcie i zachętę”.

Zastrzeżenie: ten artykuł służy wyłącznie do celów informacyjnych. Nie jest oferowana ani przeznaczona do wykorzystania jako porady prawne, podatkowe, inwestycyjne, finansowe lub inne.

Źródło: https://cryptodaily.co.uk/2023/03/euler-finance-hack-postmortem-reveals-8-month-old-vulnerability