Euler Finance Hack Postmortem разкрива 8-месечна уязвимост

Постмортемът на експлойта за флаш заем на Euler Finance разкри, че уязвимостта в основата на експлойта е останала във веригата в продължение на 8 месеца. 

В резултат на уязвимостта Euler Finance загуби 200 милиона долара по-рано тази седмица. 

Уязвимост от осем месеца 

Одиторският партньор на Euler Finance, Omniscia, публикува подробен доклад след смъртта, анализиращ уязвимостта, която хакерите са използвали по-рано през седмицата. Според доклада след смъртта, уязвимостта е възникнала от неправилния механизъм за даряване на протокола за децентрализирано финансиране, което позволява даренията да се извършват без подходяща проверка на здравето. Кодът беше въведен в eIP-14, протокол, който въведе набор от промени в екосистемата на Euler Finance. 

Euler Finance позволява на потребителите да създават изкуствен ливъридж чрез изсичане и депозиране на активи в една и съща транзакция. Този механизъм позволи на потребителите да секат повече токени от обезпечението, държано от самата Euler Finance. Новият механизъм позволи на потребителите да дарят своя баланс към резервния баланс на токена, с който са извършили транзакция. Той обаче не успя да извърши какъвто и да е вид проверка на състоянието на акаунта, извършващ дарението. 

Как беше използвана уязвимостта 

Дарението би причинило дълга на потребителя (DToken) да остане непроменен. Въпреки това балансът на техния капитал (EToken) ще намалее. В този момент ликвидацията на акаунта на потребителя ще доведе до оставане на част от Dtokens, което ще доведе до създаване на лош дълг. Този недостатък позволи на нападателя да създаде позиция със свръхливъридж и след това сам да я ликвидира в същия блок, като изкуствено я накара да отиде „под вода“.

Когато хакерът се самоликвидира, се прилага процентна отстъпка, което кара ликвидатора да получи значителна част от EToken единици с отстъпка и да гарантира, че те ще бъдат „над водата“, поемайки дълга, който ще съответства на придобитото обезпечение. Това би довело до нарушител с лош дълг (DTokens) и ликвидатор, който има свръхобезпечение на своя дълг. 

Omniscia заяви, че функцията, която е в основата на уязвимостта, не е в обхвата на никакви одити, извършени от фирмата. Според анализа, одит от трета страна е отговорен за прегледа на въпросния код, който след това е одобрен. Функцията donateToReserves беше одитирана през юли 2022 г. от екипа на Sherlock. Ойлер и Шерлок също потвърдиха, че първият е имал активна политика за покритие с Шерлок, когато се случи експлойтът. 

Euler Finance работи с групи за сигурност 

След експлойта, Euler Finance заяви, че протоколът работи с други групи за сигурност за извършване на допълнителни одити. Освен това той заяви, че също така се е свързал със служители на правоприлагащите органи и агенции в опит да възстанови откраднатите средства. 

„Опустошени сме от ефекта на тази атака върху потребителите на протокола Euler и ще продължим да работим с нашите партньори по сигурността, правоприлагащите органи и по-широката общност, за да разрешим това възможно най-добре. Благодаря ви много за вашата подкрепа и насърчение.“

Отказ от отговорност: Тази статия е предоставена само с информационна цел. Той не се предлага или е предназначен да се използва като правен, данъчен, инвестиционен, финансов или друг съвет.

Източник: https://cryptodaily.co.uk/2023/03/euler-finance-hack-postmortem-reveals-8-month-old-vulnerability