Хакер обчистил пул на $578 тыс. без взлома биржи: история LULA

Атака на токен LULA в сети BNB Smart Chain принесла злоумышленнику около $578 тыс. О случившемся почти одновременно сообщили несколько X-инвестигейторов.

LULA торговался в пуле ликвидности на децентрализованной бирже PancakeSwap. Проблема оказалась в коде токена.

Хотите еще эксклюзивных новостей и аналитики? Подписывайтесь на наш телеграм-канал, обсуждайте новости и делитесь мнениями о последних событиях рынка в чате!

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

В основе атаки лежала функция recycle(). Она давала контракту Rental два права:

Пул на DEX удобно представить как весы с двумя чашами: на одной чаше USDT, на другой — LULA. Цена определяется соотношением объемов. Обычный трейдер может лишь перекладывать монеты с чаши на чашу через обмен. Функция recycle() же позволяла снимать токены с одной чаши со стороны, а sync() заставлял весы признать новое положение честным.

Последовательность действий BlockSec Phalcon описывает так:

Смысл маневра в том, что чем меньше токенов остается на одной чаше весов, тем дороже становится каждый из них. Искусственно сжав объем LULA в паре, злоумышленник обменял малое количество токенов по фиктивно завышенному курсу.

Подготовка за 12 дней

Атака не была спонтанной. По данным CertiK и CecuroAlert, за 12 дней до эксплойта злоумышленник развернул вспомогательные контракты, чтобы накопить реферальные и командные вознаграждения. Заготовленное право на выплаты стало входной точкой: связка claimReward() → recycle() позволяла максимизировать дефляционный эффект, то есть сжатие количества токенов в обороте.

Для основного этапа использовался флеш-займ примерно на $237 млн. Флеш-заем работает как деньги, взятые на несколько секунд под честное слово: заемщик обязан вернуть сумму внутри той же транзакции, иначе она целиком отменяется. Собственный капитал для этого не нужен, поэтому такой инструмент часто применяют для разгона манипуляций с ценой. Заемные средства пошли на вывод LULA из пула на DEX, что усилило эффект от вызовов recycle().

Источник: https://ru.beincrypto.com/ukrast-master-klass-ot-hakera-lula/

Наверх