Вы здесь

Разработчики Balancer проигнорировали уязвимость смарт-контракта и были дважды наказаны

DeFi-протокол Balancer потерял за сутки $500 000 и $2 300 в ходе двух хакерских атак, разработчики уже пообещали возместить клиентам потери. Поспешная готовность выплатить компенсации связана с очевидностью бага, который был известен команде, согласно расследованию Cointelegraph.

1
Хакер задействовал флэш-кредита биржи dYdX, не требующего залога в криптовалюте, чтобы получить стаблокин WETH, используемый в смарт-контракте Balancer.

На эти средства была запущена серия прямой и обратной конвертации токенов STA, возрастающая в геометрической прогрессии. Каждая сделка сжигала 1% STA в виде комиссии, но баг смарт-контакта не корректировал при этом стоимость токена. В протоколе Balancer она определяется на основании остатка криптовалюты в пуле ликвидности.

Хакер самостоятельно вызвал процедуру оценки стоимости STA, когда истощил количество токенов обменами практически до нуля. Получив рекордно высокую цену, злоумышленник обменял STA на стаблокины WETH, WBTC, токены SNX и LINK. Полученные средства были переведены в ETH и выведены через сервис Tornado Cash – это миксер, обеспечивший анонимность перевода.

Личность хакера не удалось установить, но баг был обнаружен раньше его атаки разработчиками дефляционного токена STA. Они писали команде Balancer про отсутствие автоматического пересчета стоимости токена смарт-контрактом. Команда отказалась исправлять уязвимость, чтобы не дать пользователям сети получить арбитражные преимущества и теперь наказана на $500 000.

Повторная атака хакера на Balancer показала, что у смарт-контракта существует постоянная проблема оценки состояния внутренних балансов токенов, размещенных в пулах ликвидности. Хакер опять воспользовался не требующим залога флеш-кредитом dYdX, чтобы выпустить на заемные средства cToken, дающие право на получение активов COMP.

Токены были отправлены в пул ликвидности Balancer, в то время как флэш-кредит, что выдается только на время, равное сборки блока майнерами, был отозван системой обратно, по принципу отмены транзакции. Однако смарт-контракт «не заметил», что залоговое обеспечение cToken исчезло, что позволило хакеру получить токены COMP из пула ликвидности.

Протокол Balancer продолжает на данный момент свою работу, поэтому возможно повторение атак. Проблема оценки состояния не может быть исправлена быстро, поэтому разработчики запрещают операции конвертаций по ряду токенов, помещая их в «черный список».

635 / 0
Аватар пользователя Иван Петров
Публикацию добавил: Иван Петров
Дата публикации: вт, 06/30/2020 - 05:06