К содержанию
Новости

Ошибка в инициализации смарт-контрактов позволила выпустить миллионы WEMIX Dollar

Инфографика: 5 225 525 токенов WEMIX Dollar
Графика: hegai.media

Команда WEMIX раскрыла подробности атаки на инфраструктуру WEMIX Dollar, которая произошла 26 июля в 18:17 по корейскому времени. Злоумышленник получил контроль над двумя смарт-контрактами и выпустил около 5 225 525 токенов WEMIX Dollar на сумму примерно 7,7 млрд вон. В проекте уточнили, что инцидент не был связан с утечкой закрытых ключей или компрометацией внутренних систем.

Как пишет SecurityLab (by Positive Technologies), проблема затронула контракты DIOS и AMA. После обновления в ноябре 2022 года функцию инициализации, которую нужно выполнять только один раз, разрешили вызывать повторно. При этом повторную инициализацию так и не провели. В результате атакующий смог снова вызвать функцию без проверки прав доступа и заменить адреса владельцев контрактов на свои.

Получив права владельца, злоумышленник развернул вредоносный контракт и провёл девять циклов флеш-займов и свопов между двумя контрактами. Помимо выпуска WEMIX Dollar, из системы вывели 723 244 USDC.e на сумму около 1 млрд вон, а также 34 752 монеты WEMIX. После обнаружения атаки команда проекта отозвала права на выпуск токенов, обратилась к биржам с просьбой заблокировать адрес злоумышленника и временно остановила связанные с WEMIX Dollar пулы ликвидности, мост Chainlink CCIP, PLAY Bridge и PNIX DEX.

Ключевые факты

  • Атака произошла 26 июля в 18:17 по корейскому времени.

  • Уязвимость затронула смарт-контракты DIOS и AMA.

  • Для выпуска токенов злоумышленник провёл девять циклов флеш-займов и свопов.

  • Из системы были выведены 723 244 USDC.e и 34 752 монеты WEMIX.

Вопросы и ответы

В чём была техническая причина атаки и почему злоумышленник получил контроль над контрактами?

После обновления в ноябре 2022 года функцию инициализации в контрактах DIOS и AMA разрешили вызывать дважды, но повторную инициализацию не провели. Это позволило повторно вызвать функцию без проверки прав доступа и заменить адреса владельцев контрактов на свои.

Как именно злоумышленник вывел средства из системы?

Получив права владельца, атакующий развернул вредоносный контракт и провёл девять циклов флеш-займов и свопов между двумя контрактами. В результате выпустили около 5 225 525 токенов WEMIX Dollar на сумму примерно 7,7 млрд вон, а также вывели 723 244 USDC.e и 34 752 WEMIX.

Какие сервисы WEMIX были остановлены после атаки?

Команда проекта отозвала права на выпуск токенов и временно остановила пулы ликвидности WEMIX Dollar, мост Chainlink CCIP, PLAY Bridge и PNIX DEX. Также биржам направили запрос на блокировку адреса злоумышленника.

Контекст по теме