Все, Что Вы Когда-Либо Хотели Знать Об Атаке «Флэш-Займа» DeFi

Вот краткое описание атак bZx на простом английском языке и их более широких последствий для развивающихся рынков DeFi.

Теперь есть пример того, как DeFi может пойти наперекосяк.

bZx, восьмой по величине децентрализованный финансовый проект по версии DeFi Pulse, подвергся двум атакам в прошлые выходные после введения “флэш-займов”, новой функции DeFi, которая ограничивает риск трейдера, одновременно повышая потенциал роста. 

Возглавляемая генеральным директором Томом Бином, команда bZx присутствовала на ETHDenver, крупной конференции ethereum в столице штата Колорадо, в пятницу, когда неизвестный злоумышленник похитил эфир (ETH) на сумму около 350 000 долларов США с Fulcrum, кредитной платформы стартапа. Как описывает вскрытие фирмы, злоумышленник воспользовался данными о ценах и ошибкой в коде протокола bZx, чтобы обеспечить выплату. 

bZx быстро отключил Fulcrum, используя явно не децентрализованный мастер-ключ. Пользователи и аналитики увидели обновление в репозитории кода GitHub, которое предположительно заблокировало фонды, находящиеся под угрозой исчезновения. 

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

Everything You Ever Wanted to Know About the DeFi 'Flash Loan' Attack

Но на этом все не закончилось. Во вторник, 18 февраля, злоумышленники снова нанесли удар по bZx, заработав 633 000 долларов. 

В то время как потерянные суммы денег все еще относительно невелики для мира криптовалют, атаки демонстрируют продвижение DeFi в высшую лигу и внимание, которое она теперь будет получать от манипуляторов и воров.

Если все это вскружило вам голову, значит, вы в хорошей компании. Технология блокчейна была достаточно сложной и абстрактной до того, как люди начали создавать на ее основе кредитные и торговые сервисы. 

Для тех, кто озадачен, CoinDesk предлагает следующее объяснение взлома bZx и его более широких уроков.

Новый рубеж

Как следует из названия, DeFi, или децентрализованные финансы, стремится в один прекрасный день предложить демократизированную альтернативу устаревшей финансовой системе, где частные лица могут получать кредиты на равноправной основе, не полагаясь на банки или других посредников. На данный момент, однако, это игровая площадка для трейдеров – и при этом непростая.

Поскольку участники не знают друг друга, кредитование DeFi полностью основано на залоге. Цифровые активы, такие как биткоин (BTC) и эфир (родная криптовалюта сети ethereum), как известно, крайне нестабильны. Чтобы справиться с этим, кредитные приложения DeFi, такие как MakerDAO, позволяют вам занимать только 75 процентов от вашего доступного залога. 

Если цена вашего актива начнет падать по отношению к рынку, смарт-контракт, лежащий в основе приложения DeFi, продаст ваш актив по определенной спотовой цене, чтобы защитить стороны, которые одолжили вам деньги под залог вашего актива. Подумайте о ростовщике, который даст вам всего 225 долларов за электрогитару стоимостью 300 долларов. 

Экосистема DeFi также включает децентрализованные биржи (DEX), где трейдеры обмениваются криптоактивами без разрешения центрального органа, их заказы выполняются алгоритмически на блокчейне ethereum. 

Торговля по цепочке ограничивает круг задействованных активов теми, которые работают на ethereum (эфир собственной валюты и различные разновидности токенов ERC). Но это позволяет опытным пользователям выполнять некоторые интересные трюки, как мы скоро увидим.

Для правильной работы кредитного рынка DeFi кредиторы должны знать стоимость залога, поэтому им нужна информация о ценах. Это данные, которые часто собираются с криптобирж. В случае с bZx источником был Кибер, ДЕКС.

Проблема в том, что информация о ценах криптобирж распространена повсюду.

Возьмем в качестве примера разницу в спотовой стоимости между пятью ведущими биржами по 24-часовому объему для наиболее ликвидного цифрового актива — биткоина:

Everything You Ever Wanted to Know About the DeFi 'Flash Loan' Attack

Спотовые цены часто сильно отличаются друг от друга, потому что ни одно место не владеет продуктом для сопряжения криптоторговли, сказал Сергей Назаров, генеральный директор Chainlink, компании по сбору данных о ценах на криптовалюту. В отличие от традиционных рынков, где торговля, скажем, акциями Apple происходит только на Nasdaq, в криптографии большинство людей, обладающих техническими ноу-хау, могут запустить биржу на своем ноутбуке – фактически, так начались первые биржи. Агрегирование цен на таком фрагментированном рынке является титанической задачей, сказал Назаров. 

Как и на других финансовых рынках, большое расхождение в ценах также создает возможности для трейдеров зарабатывать деньги. Введите срочные кредиты.

Слишком много информации? Для более простого объяснения послушайте наш ежедневный подкаст Markets.

Срочные кредиты

Флэш-кредиты — это еще одно новшество в дополнение к DeFi и ethereum, блокчейну, который чаще всего ассоциируется с концепцией “программируемых денег”. Продукт был впервые выпущен DeFi protocol Aave в январе этого года, а затем bZx 10 февраля.

Короче говоря, срочные кредиты позволяют трейдерам брать необеспеченные кредиты, чтобы увеличить выплаты по отдельной сделке. Возвращаясь к аналогии с ломбардом, вы можете занять наличные, не отдавая свою гитару. 

Зачем какому-либо кредитору соглашаться на это, особенно на рынке, где участники анонимны? Потому что, как следует из названия, срочные кредиты быстро выплачиваются – в той же транзакции, в которой они были взяты. 

Кто стал бы занимать деньги только для того, чтобы немедленно их вернуть? Умные арбитражеры, вот кто. 

Как мы уже видели, разные крипторынки имеют разные цены на данный цифровой актив. Пользователь может быстро получить прибыль, занимая средства; покупая по низкой цене на одном рынке; продавая по высокой цене на другом рынке; погашая кредит; и прикарманивая прибыль. Опять же, все это делается в рамках одной и той же транзакции по цепочке, поскольку рынки — это DEX, которые часто работают на ethereum. Арбитражеру просто нужно было закодировать все шаги в одной и той же компьютерной программе, известной как смарт-контракт. 

Кроме того, срочные кредиты почти безрисковые, по крайней мере, для заемщика. Поскольку сеть ethereum осуществляет расчеты по транзакциям атомарно, то есть все транзакции в книге выполняются или не выполняются, трейдер, который не может погасить свой кредит своей сделкой, ничего не теряет. 

Почему? Потому что транзакция никогда не происходит.

Как пишет Aave, все транзакции, от займа до торговли, происходят сразу в сети. Если сеть увидит, что срочный кредит не будет погашен мгновенно, она откажется от каждой связанной с ним транзакции, фактически отменив все это. Никакого вреда, никакой скверны.

Однако, если он проходит, все выполняется одновременно, что приводит к успешной торговле. Кредитор взимает небольшую плату, трейдер становится богаче. Выигрывают все.

Если бы только все было так просто.

Нападение

Как показали проблемы bZx в выходные, срочные займы могут быть опасными в сочетании с ошибочным кодом, скачкообразными ценами или и тем, и другим. 

Вместо того, чтобы просто покупать дешево и продавать дорого, злоумышленник или злоумышленники использовали заемные средства для манипулирования рынками, которые были необычайно уязвимы для этого. В обеих атаках bZx получил короткий конец палки.

В первой атаке, например, с помощью сложной сети транзакций злоумышленник перекачал, а затем сбросил WBTC (“завернутый биткойн», токен ethereum” поддерживаемый фактическим биткойном) на DEX под названием Uniswap; получил прибыль в эфире; погасил флэш-кредит — и заблокировал bzX по другому кредиту, связанному с прокачкой WBTC. 

“Волшебство под капотом заключается в том, как Uniswap WBTC / ETH манипулировали до 61,4 с целью получения прибыли”, — говорится в анализе, проведенном фирмой по безопасности блокчейна PeckShield. “Цена WBTC / ETH была даже повышена до 109,8, когда нормальная рыночная цена составляла всего около 38. Другими словами, происходит преднамеренное огромное снижение цен, вызванное эксплуатацией».

В этой атаке плохо настроенный ценовой канал, безусловно, не помог, но вина лежит на коде, сказал CoinDesk генеральный директор PeckShield Цзян Сюйсянь. Там, где должен был сработать защитный провод, когда цена вышла из-под контроля, он не сработал, сказал Сюсянь.

Вторая атака была связана с плохими данными о ценах, в частности, от сети DeFi Kyber, сообщил CoinDesk соучредитель bZx Кайл Кистнер. На этот раз злоумышленник сосредоточился на Synthetix USD (SUSD), стабильной монете с привязкой к доллару в сети Synthetix. 

Злоумышленник занял 7500 эфиров на bZx, а затем увеличил стоимость SUSD на Kyber, обменяв эфир на SUSD. Покупка такого количества SUSD привела к тому, что цена подскочила в 2,5 раза по сравнению с преобладающим рыночным курсом в 1 доллар, пишет Пекшилд.

Затем злоумышленник воспользовался зависимостью bZx от Kyber в отношении данных о ценах, выставив SUSD в качестве залога за большую сумму эфира на bZx; фактически, на 2000 эфира больше, чем такое же количество SUSD, которое обычно покупалось на открытом рынке. 

После погашения флэш-кредита злоумышленник отказался от выплаты кредита с недостаточным обеспечением в долларах США / ETH, только что полученного на bZx, в результате чего прибыль составила 2378 ETH и кнопки удержания bZx.

Уроки для ДеФи

Для небольших бирж, таких как bZx и DeFi в целом, сочетание инновационных финансовых функций, таких как флэш-кредиты, с систематической опорой на неверные данные о ценах подвергает биржи новым атакам, сказал Назаров из Chainlink. 

“Не используйте [одну] конкретную биржу в качестве источника цен, — сказал Назаров, — если она становится слабо торгуемой, люди смотрят и говорят: ”Хорошо, вот как я создаю продукт против этого рынка или против этой части данных“.”

Фактически, конкретная атака на bZx была описана за несколько месяцев до того, как она произошла хакером в белой шляпе Самчсуном в подробном сообщении в блоге. Как писал Самчун в то время, выдвигая гипотезу об эксплойте с участием bZx, токена ethereum, известного как DAI, и других децентрализованных бирж под названием DDEX: 

“Полагаясь на децентрализованный ценовой оракул в сети без проверки возвращаемых ставок, DDEX и bZx были подвержены манипулированию атомарными ценами. Это привело бы к потере ликвидных ETH на рынке ETH / DAI для DDEX и потере всех ликвидных средств в bZx».

Назаров сказал, что проблема не специфична для bZx, но для многих бирж в рамках DeFi, которые полагаются на несколько API-интерфейсов ценообразования в сети. Его фирма сейчас работает с bZx над решением этой проблемы, добавил он.

Кистнер признал, что команда bZx считала, что проблемы с oracle были устранены после раскрытия информации Самчсуном, и даже провела независимый аудит кода. Как показала атака во вторник, проблемы не были устранены.

“Ужасно консультироваться со специалистами по безопасности, но потом становиться посмешищем, когда следуешь их советам”, — сказал Кистнер.

Как отметил Назаров, вы можете попросить всех аудиторов в мире дать зеленый свет вашему коду, но если он основан на плохих данных, таких как ценообразование в сети, неудача неизбежна.

“Технический риск здесь связан не только с кодом контракта. Код может быть фантастическим и проверяться столько, сколько вы захотите. Но происходит то, что вы создаете новую функциональность, которая создает новые области поверхности, которые необходимо защитить”, — сказал Назаров.

Назаров сказал, что эти нападения, хотя и прискорбные, являются уроком для DeFi в целом. Данные о ценах — это “хорошо известная архитектурная проблема”, которую необходимо решить, сказал он. “Если вы создаете приложение, которое будет хранить средства клиентов, тот факт, что оно автоматизировано, — это здорово, но это не значит, что ваша работа с точки зрения безопасности выполнена, потому что контракт заключен на ethereum”. 

В bZx команда обратила свое внимание на обеспечение безопасности сети. Кистнер сказал, что вскоре торговля возобновится с использованием оракулов Chainlink для ценообразования, хотя новых пользователей не будет. Кистнер сказал, что в будущем bZx рассмотрит возможность репликации инфраструктуры MakerDAO, крупнейшего поставщика DeFi.

“Когда мы закончим модернизацию наших внутренних процессов, мы хотим установить стандарт как безопасности, так и прозрачности”, — сказал он.

Добавить комментарий