Кросс-чейн протокол Maya Protocol потерял около 1,7 миллиона долларов и остановил торги. Атакующему хватило одной транзакции из 23 сообщений, чтобы последовательно запустить шесть ошибок в коде — каждая по отдельности выглядела безобидно.
Коротко: что произошло
Атака случилась 18 августа около 17:30 UTC. Это первый крупный инцидент с потерей средств у протокола с момента запуска основной сети в апреле 2023 года.
Подтверждённый вывод на внешние сети — примерно 1,36 миллиона долларов, в основном 20,83 биткоина на сумму около 1,34 миллиона. Ещё около 8,87 миллиона токенов CACAO осталось у атакующего внутри сети — по обвалившимся ценам это порядка 288 тысяч долларов.
Собственный токен протокола рухнул с 0,115 до 0,013 доллара — почти на 89%, — затем частично отыграл до трёх центов, когда выведенные средства пошли через пулы ликвидности.
Как сработала цепочка из шести ошибок
| Звено | Что произошло |
|---|---|
| 1. Пакетная транзакция | 23 сообщения о депозитах в одной операции |
| 2. Перезапись сообщений | Учёт транзакций нарушился |
| 3. Ложное срабатывание защиты | Система решила, что происходит кража |
| 4. Расчёт штрафа без ограничения | Санкция посчиталась без верхнего предела |
| 5. Сохранение раздутого баланса | Значение записалось до того, как операция не прошла |
| 6. Неудачный откат | Баланс остался завышенным |
Дальше просто: средства ушли из внешних хранилищ раньше, чем контроль платёжеспособности и механизм остановки успели перекрыть поток.
Как отреагировала команда
Автоматика остановила торги на 720 блоков — около часа, — заморозив депозиты и выводы в затронутых пулах. Флаги остановки цепочки включили сразу после инцидента.
Сооснователь проекта под ником Aaluxx подтвердил взлом, поблагодарил операторов узлов и пообещал возместить потери полностью. Атакующему предложили вознаграждение как «белому хакеру» и публичное раскрытие уязвимости в обмен на возврат средств.
Среди рассматриваемых мер — заморозка оставшихся CACAO, попытка вернуть биткоины и, как крайний вариант, откат состояния сети с согласия валидаторов. Полного технического разбора на момент публикации не было: как именно атакующий обошёл контроль платёжеспособности и ограничители вывода, ещё не описано.
Почему аудиты этого не поймали
Насколько я это вижу, здесь важнее всего не сумма, а то, что уязвимости прошли через две независимые аудиторские проверки и остались незамеченными.
Причина в природе самой атаки. Аудит хорошо ловит опасный фрагмент кода: неверную проверку прав, ошибку округления, отсутствующий лимит. Но здесь каждый отдельный шаг был почти корректен, а провал возник на стыке — когда защитный механизм ошибочно срабатывает, второй считает штраф без потолка, а третий не может корректно откатить состояние.
Такие сценарии ловятся не чтением кода, а моделированием состояний: что будет, если соединить два десятка сообщений в одной операции и заставить систему обрабатывать их не в том порядке, на который рассчитывал автор. Процедура дорогая, и её обычно откладывают. О том, почему взломы бьют рекорды несмотря на аудиты, мы писали отдельно.
Отсюда практический вывод: наличие аудита говорит об отсутствии известных ошибок, а не о безопасности системы в целом. Для протокола, который держит средства сразу в нескольких сетях, разница между этими двумя утверждениями измеряется миллионами.
Что с откатом сети
Вариант с откатом состояния — самый спорный пункт плана. Он технически возможен, но означает, что валидаторы соглашаются переписать уже подтверждённую историю. Недавний прецедент есть: после августовской атаки Harmony пошла на откат, стерев 109 тысяч операций.
У таких решений своя цена. Восстановив средства, сеть публично признаёт, что её история изменяема при достаточном согласии участников. Для протокола, где ценность строится на невозможности произвольно менять записи, это не техническая, а репутационная развилка.
Остановка сервиса, впрочем, случается и без взлома: недавно сервис свопов закрылся под нагрузкой ботов, хотя средства уцелели.
Частые вопросы
Сколько потерял Maya Protocol?
Около 1,7 миллиона долларов с учётом активов внутри сети. Подтверждённый вывод на внешние блокчейны — примерно 1,36 миллиона, в основном 20,83 BTC.
Что случилось с токеном CACAO?
Он упал с 0,115 до 0,013 доллара, почти на 89%, затем частично восстановился до уровня около трёх центов.
Как остановили атаку?
Сработал автоматический механизм: торги встали на 720 блоков, примерно на час, депозиты и выводы в затронутых пулах заморозили.
Вернут ли деньги пользователям?
Сооснователь пообещал возместить потери полностью. Конкретный механизм и сроки не объявлены.
Почему аудиты не нашли проблему?
Ошибки срабатывали только в связке из шести шагов. По отдельности каждый выглядел допустимым, а проверки такого рода требуют моделирования состояний, а не чтения кода.
Возможен ли откат сети?
Он рассматривается как один из вариантов возврата средств и потребует согласия валидаторов. Решение не принято.
Источники
Материал подготовлен на основе публикаций The Crypto Times и Coin Gabbar.
Обсуждение
Добавить комментарий