Развитието на блокчейн индустрията и как да се защитим от атаки срещу DeFi

В наши дни пазарът на блокчейн като цяло е в начален стадий и децентрализирани финанси (DeFi) пазарът е най-обещаващата му част. Според данни на DefiLlama през 2021 г. пазарът на DeFi имаше около 200 милиарда долара ликвидност, заключена в интелигентни договори. Ако разглеждаме този капитал като първоначална инвестиция, този пазар изглежда като многообещаващо начинание. Не много световни компании могат да се похвалят с такава капитализация. Но всеки млад пазар има своите проблеми със зъбците. При DeFi основният проблем е липсата на квалифицирани разработчици на блокчейн.

Тази индустрия е много млада и има сравнително малка потребителска база. Повечето хора в най-добрия случай са чували за DeFi, без да имат представа какво представлява. Но както се случва с всяко ново обещаващо начинание, то бързо създава много спекулативен интерес. За съжаление, подготовката на персонала отнема много повече време, особено когато става въпрос за такива интензивни сфери на знания като блокчейн и разработка на интелигентни договори. Това означава, че някои проектни екипи ще трябва да направят компромис и да наемат по-малко опитен персонал.

Този проблем неизбежно създава нарастващ риск от пропуски в сигурността в кода на тези проекти. И тогава трябва да се справим с последиците от него в загубен потребителски капитал. Само за кратко разбиране колко голям е този проблем, мога да кажа, че около 10% от общата заключена ликвидност на DeFi е открадната от хакери. Не бива да изненадва никого, че масовата общественост би предпочела да стои далеч от финансова система, която създава такива опасности за техните средства.

Свързани: Как протоколите DeFi се хакват?

Как се промениха експлойтите на DeFi наскоро?

Атаките срещу DeFi отдавна са съсредоточени около атаки за повторно влизане. Можем да си припомним известните Хакването на DAO от 2016 г., което доведе до загуба на $150 милиона в инвеститорски капитал и доведе до хард форка на Ethereum. Оттогава тази уязвимост е била използвана многократно в различни интелигентни договори.

Функцията за обратно извикване се използва активно от протоколите за кредитиране: Тя позволява на интелигентните договори да проверяват баланса на обезпечението на потребителите, преди да дадат заем. Целият този процес се случва в рамките на една транзакция, което е дало на хакерите заобиколно решение да откраднат пари от такива интелигентни договори. Когато изпратите заявка за заемане на средства, функцията за обратно извикване първо проверява баланса на обезпечението, след това дава заема, ако обезпечението е достатъчно и след това променя баланса на обезпечението на потребителя в интелигентния договор.

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

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

Ето какво позволи на хакерите да откраднат около 19 милиона долара от Cream Finance през август 2021 г. Екипът на Cream Finance заимства кода от различен DeFi протокол и добави токен за обратно извикване в своя интелигентен договор. Въпреки че можете да предотвратите атаки за повторно влизане чрез прилагане на модела „проверки, ефекти, взаимодействия“, който дава приоритет на промяната на баланса пред издаването на средства, някои екипи все още не успяват да защитят своите платформи от тези експлойти.

Атаките с флаш заем позволяват на хакерите да крадат средства по различен начин и стават все по-популярни след бума на DeFi през 2020 г. Основната идея на атаките с флаш заем е, че не е необходимо да имате обезпечение, за да заемате средства от протокол, тъй като финансовият паритет все още е гарантиран от факта, че заемът се взема и връща в рамките на една сделка. И няма да се осъществи, ако не успеете да върнете заема с лихва в една сделка. Но нападателите са успели да извършат успешни флаш заемни атаки на много протоколи.

Свързани: Необходимо е: масивен образователен проект за борба с хакове и измами

Правейки ги, те използват множество протоколи, за да заемат и изтеглят ликвидност до последния акт, при който увеличават цената на токен чрез оракули или пулове на ликвидност и го използват, за да измамят изпомпване и изхвърляне и да изчезнат с ликвидност в масив на някои основни различни криптовалути като етер (ETH), Wrapped Bitcoin (wBTC) и други. Някои известни атаки за флаш заем включват Атака на Палачинково зайче, където протоколът загуби $200 милиона, и още една атака на Cream Finance, при който бяха откраднати над 100 милиона долара.

Как да се защитим от DeFi подвизи?

За да изградите защитен DeFi протокол, в идеалния случай трябва да се доверите само на опитни разработчици на блокчейн. Те трябва да имат професионален ръководител на екип с умения в изграждането на децентрализирани приложения. Също така е разумно да запомните да използвате безопасни кодови библиотеки за разработка. Понякога по-малко актуалните библиотеки могат да бъдат най-безопасният вариант от тези с най-новите кодови бази.

Тестването е друго важно нещо всички сериозни DeFi проекти трябва да направят. Като главен изпълнителен директор на компания за одит на интелигентни договори, винаги се опитвам да покрия 100% от кода на нашите клиенти и подчертавам важността на децентрализираната защита на частните ключове, използвани за извикване на функции на интелигентни договори с ограничен достъп. Най-добре е да използвате децентрализация на публичния ключ чрез мултиподпис, който не позволява на един субект да има пълен контрол върху договора.

В крайна сметка образованието е един от ключовете, които ще позволят на базираните на блокчейн финансови системи да станат по-сигурни и надеждни. А образованието трябва да бъде една от основните грижи на тези, които търсят работа в DeFi, защото то може да предложи апетитни награди на всички, които могат да дадат жизнеспособен принос.