Home » Злоумышленники похитили 24 млн. долл. из нескольких проектов DeFi с помощью эксплойтов Curve Pool

Злоумышленники похитили 24 млн. долл. из нескольких проектов DeFi с помощью эксплойтов Curve Pool

by Tim

В воскресенье несколько децентрализованных финансовых протоколов подверглись атаке злоумышленников, похитивших криптовалюту на сумму более 24 млн. долл. Злоумышленники воспользовались уязвимостью в пулах ликвидности на платформе Curve, автоматическом маркет-мейкере.

Уязвимость была обнаружена в Vyper, альтернативном стороннем языке программирования смарт-контрактов Ethereum, сообщает Curve в Twitter. По словам представителей Curve, с другими пулами ликвидности, не использующими этот язык, все в порядке.

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

По данным компании Decurity, специализирующейся на безопасности децентрализованных финансов, из протокола NFT-кредитования JPEG’d была похищена криптовалюта на сумму 11 млн долларов США. JPEG’d одним из первых выявил проблему со своим пулом на Curve.

«Произошла атака», — говорится в сообщении JPEG’d в Twitter. «Мы изучаем проблему с того момента, как нам стало известно о ней, и […] проблема, похоже, связана с пулом Curve».

JPEG’d позволяет пользователям размещать НФТ в качестве залога по кредитам. С точки зрения активов, размещенных в JPEG’d, общая стоимость заблокированных средств (TVL) в протоколе составляет около 32 млн. долл. По словам представителей JPEG’d, код, отвечающий за хранение НФТ и казначейских средств, не пострадал.

По данным CoinGecko, на момент написания статьи управляющий токен протокола JPEG упал на 23%. В воскресенье монета достигла исторического минимума — 0,000347 долл.

В своем удаленном твите компания Curve первоначально описала уязвимость как обычную атаку «re-entrancy» на чтение, которой можно было избежать. Атака с повторным вхождением происходит, когда смарт-контракт взаимодействует с другим контрактом, который, в свою очередь, обращается к первому контракту перед полным выполнением.

Уязвимости реентерабельности позволяют злоумышленнику впихнуть несколько вызовов в одну функцию и обмануть смарт-контракт, заставив его вычислять неправильный баланс. Одним из наиболее ярких примеров стал взлом DAO на Ethereum стоимостью 55 млн долларов в 2016 году.

Однако, отвечая на сообщение в Twitter, которое позже повторило затертое заявление, компания Curve заявила, что ее первоначальное впечатление было ошибочным.

«Да, не только для чтения», — заявила компания Curve, добавив, что «никаких правонарушений со стороны проектов, интегрировавших vyper, или даже пользователей vyper не было.»

Атаки на ретрансляцию — слишком распространенный вектор хищения протоколов злоумышленниками, заявил в интервью TCN Меир Долев, соучредитель и технический директор компании Cyvers, специализирующейся на кибербезопасности.

«Они довольно распространены», — сказал Долев. «И их можно избежать при правильном проектировании и разработке».

Проблема возникла не только с JPEG’d. По его словам, вскоре после того, как был использован протокол кредитования NFT, Alchemix и Metronome DAO потеряли 13,6 млн. долл. и 1,6 млн. долл. соответственно.

Alchemix признала в Twitter, что активно работает над устранением проблемы с пулом ликвидности. MetronomeDAO сообщила в Twitter, что ее расследование произошедшего продолжается, и назвала атаку «частью более широкого набора эксплойтов».

По словам Долева, в случае с JPEG’d атакующий был опережен ботом с максимальной извлекаемой стоимостью (MEV). Бот идентифицировал транзакцию потенциального злоумышленника и платил вознаграждение за выполнение аналогичной транзакции перед ним.

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

По словам Долева, это не позволило сработать защитам от повторного входа, которые были включены в код проектов и должны были защищать от атак повторного входа.

«Компилятор в некоторых версиях не смог скомпилировать его правильным образом», — сказал Долев. «В нем есть какие-то ошибки или сбои».

Related Posts

Leave a Comment