Добавить в корзинуПозвонить
Найти в Дзене

Разбор атак недели: как хакеры обходят защиту протоколов

Привет, это команда «Шард». Крипторынок продолжает проходить препятствия на устойчивость: за прошедшею неделю сразу несколько протоколов столкнулись с атаками разной сложности — от логических ошибок в контрактах до компрометации внешних сервисов. Разбираем, какие проекты оказались под ударом и какие уязвимости использовали злоумышленники. Рассмотрим ключевые инциденты и механики атак на примерах: Votemarket, Keom.io, dTRINITY, BlindBox и Resolv. 12 марта произошел взлом протокола Votemarket, в результате которого злоумышленник получил около $175 тыс. из наградных фондов. При этом основной смарт-контракт и пользовательские средства не пострадали — уязвимость находилась во вспомогательном механизме оракула, который отвечает за передачу данных между сетями. Ошибка заключалась в некорректной проверке отправителя входящих сообщений. Контракт принимал данные даже от постороннего адреса, если они поступали из сети Ethereum. Этим и воспользовался атакующий: он отправил поддельные данные о голо
Оглавление

Привет, это команда «Шард». Крипторынок продолжает проходить препятствия на устойчивость: за прошедшею неделю сразу несколько протоколов столкнулись с атаками разной сложности — от логических ошибок в контрактах до компрометации внешних сервисов. Разбираем, какие проекты оказались под ударом и какие уязвимости использовали злоумышленники.

Рассмотрим ключевые инциденты и механики атак на примерах: Votemarket, Keom.io, dTRINITY, BlindBox и Resolv.

Взлом протокола Votemarket

12 марта произошел взлом протокола Votemarket, в результате которого злоумышленник получил около $175 тыс. из наградных фондов.

При этом основной смарт-контракт и пользовательские средства не пострадали — уязвимость находилась во вспомогательном механизме оракула, который отвечает за передачу данных между сетями. Ошибка заключалась в некорректной проверке отправителя входящих сообщений. Контракт принимал данные даже от постороннего адреса, если они поступали из сети Ethereum. Этим и воспользовался атакующий: он отправил поддельные данные о голосовании через мост, искусственно увеличив свой «вес» в системе.

Поскольку награды распределяются пропорционально голосам, злоумышленник получил доступ к средствам сразу в десятках кампаний — всего пострадали 54 кампании в сетях Arbitrum и Base.

После получения токенов злоумышленник перевёл их в другие сети через мост, обменял на более ликвидные активы через децентрализованные биржи и в итоге конвертировал всё в ЕТН, чтобы скрыть следы. Общая сумма после обменов составила около 76 ЕТН. Позже инцидент был урегулирован в формате white hat: около 60,58 ЕТН вернулись в казначейство организации Stake DAO.

Адрес хакера:

  • 0xb40125d2e1b83a36fde292f75922793e5f3f94ff

Взлом протокола Keom.io

17 марта произошел взлом протокола Keom.io в сети Polygon zkEVM. В результате было выведено около $94 тыс.

Причиной атаки стала ошибка в логике смарт-контракта: система некорректно проверяла допустимый объем вывода средств.

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

Адрес хакера:

  • 0xb343fe12f86f785a88918599b29b690c4a5da6d5

Взлом протокола dTRINITY

В тот же день был атакован протокол dTRINITY — ущерб составил около $257 тыс.

Сначала злоумышленник занял USDC через сторонний протокол, затем внес около 772 USDC в систему dTRINITY. Из-за ошибки в расчетах система восприняла этот депозит как обеспечение на сумму около $4,8 млн.

Используя эту «фантомную» ликвидность, атакующий занял 257 тыс. dUSD. Далее он 127 раз подряд вносил и выводил средства через вспомогательный контракт, постепенно извлекая оставшийся USDC из пула. В результате была полностью исчерпана часть ликвидности протокола, а средства выведены через Tornado Cash.

Адрес хакера в сети ETH:

  • 0x08cfdff8ded5f1326628077f38d4f90df6417fd9
Граф связей
Граф связей

Взлом контракта BlindBox

19 марта в сети BNB произошел взлом контракта BlindBox, связанного с токеном ATM Token. Ущерб атаки составил около $99 тыс., а ее причиной стала ошибка в механизме случайности в игре с «olind box».

Пользователи отправляли токены АТМ на специальный адрес сжигания (DEAD-адрес) и делали ставку на четный или нечетный результат. Итог должен был определяться случайным образом. Однако оказалось, что это значение можно было предсказать заранее.

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

Примерно за 150 раундов было выведено около 13 млн АТМ-токенов, которые затем были проданы через PancakeSwap и выведены через Tornado Cash.

Адрес:

  • 0x3f9Bd963641e969Fc0c9Ddf1c67e210e84915b7D

Взлом DeFi-протокола Resolv

21 марта хакер взломал DeFi-протокол Resolv. В результате атаки он создал необеспеченные стейблкоины USR и вывел активы примерно на $23 млн. Инцидент произошел не из-за ошибки в смарт-контракте, а из-за компрометации внешней инфраструктуры, которая использовалась для подтверждения операций.

В протоколе выпуск USR происходил в два этапа: пользователь вносил залог в USDC, после чего off-chain сервис подписывал разрешение на выпуск токенов. Контракт проверял только корректность подписи, но не соответствие объема эмиссии залогу. Вышло, что если у кого-то был доступ к ключу подписи, он мог разрешить выпуск любого количества токенов.

Получив доступ к ключу подписи, злоумышленник внес около $100-200 тыс. в USDC и с помощью украденного ключа подтвердил выпуск огромного количества токенов. В результате было создано около 80 млн USR — значительно больше реального обеспечения.

Далее атакующий перевел эти токены в застейканную форму и постепенно обменивал их через DEX на другие стейблкоины и ЕТН, чтобы вывести ликвидность и усложнить отслеживание. В итоге было выведено около 11 400 ЕТН, которые сосредоточились на основном адресе злоумышленника: Ox8ed8cfOclc531clb20848e78flcb32fa5b99b81c.

Фактически из-за доверия к off-chain подписи злоумышленник получил возможность «печатать» токены и обменивать их на реальные активы. Это привело к падению курса USR почти на 80%. 24 марта Resolv Labs выдвинула хакеру ультиматум: вернуть 90% средств (~$22,5 млн) в течение 72 часов.

Известные адреса злоумышленника в сети ETH:

  • 0x04a288a7789dd6ade935361a4fb1ec5db513caed
  • 0x9feeeaec113e6d2dcd5ac997d5358eee41836e5f
  • 0xb945ec1be1f42777f3aa7d683562800b4cdd3890
  • 0x8ed8cf0c1c531c1b20848e78f1cb32fa5b99b81c

Итоги

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

Узнавайте больше о мире криптовалют в нашем блоге.

Присоединяйтесь к Телеграм-каналу, чтобы не пропустить важные новости индустрии