Исправлена уязвимость в сети Aptos, которая подвергала риску 70 миллиардов долларов при атаке стоимостью 3 тысячи долларов
- Уязвимость позволяла захватывать роли, которые разрешают выпускать стейблкоины, такие как USDC.
- Исследователи доказали, что от 17 до 18 из каждых 20 попыток атаки были успешными.
Критическая уязвимость в сети Aptos была исправлена в прошлом феврале, после того как компания безопасности Hexens продемонстрировала, что эта уязвимость могла подвергнуть риску до 70 миллиардов долларов в фондах внутри экосистемы Aptos с помощью атаки стоимостью всего 3 тысячи долларов, как сообщили исследователи, упомянув, что это стоимость аренды сервера с мощностью настольного компьютера. Исправление было применено до того, как уязвимость была использована, поэтому ни один пользователь не потерял деньги.
Хотя обнаружение и исправление произошли в феврале, полные технические детали и доказательство концепции (PoC) от Hexens стали известны только на этой неделе, когда Hexens и команда Aptos обнародовали их.
Согласно Hexens, из каждых 20 попыток при симуляции атаки от 17 до 18 завершались успехом в тестовой среде с более чем 30 узлами (компьютерами, которые проверяют и подтверждают операции внутри сети). Команда Aptos подтвердила 4 июля в одном из СМИ, что обнаружение было сообщено 25 февраля через программу вознаграждений за сообщения о уязвимостях безопасности, и исправление было разработано, протестировано и развернуто в основной сети позже.
Ошибка возникала в виртуальной машине Move (MoveVM), программе, которая выполняет код смарт-контрактов внутри Aptos для выполнения операций сети, разработанной на языке программирования Move. Эта программа, в свою очередь, организует данные каждого контракта в структуры, в которых MoveVM хранит, например, баланс счета или права управления протоколом.
Система хранит идентификационный номер для каждой из этих структур в временной памяти, чтобы не повторять один и тот же процесс при каждой операции. Проблема возникала, когда система очищала часть этой памяти, чтобы освободить место, но не всю: номер, идентифицирующий структуру, мог ошибочно остаться связанным с данными совершенно другой структуры. Это то, что называется путаницей типов, ошибкой, при которой программа в конечном итоге обрабатывает информацию одного счета так, как будто она принадлежит другому.
С этой ошибкой, как описал Hexens в своем техническом отчете, опубликованном 6 июля, злоумышленник мог захватить роли главного администратора, функции, которая разрешает выпуск стейблкоина, или возможности подписи, которые контролируют управление средствами внутри контракта. Исследователи утверждали, что смогли захватить роль главного администратора и дошли до этапа, предшествующего разрешению на выпуск, не выполняя его.
Команда Hexens также отметила, что уязвимость охватывала маршруты, которые соединяют Aptos с мостами между сетями, такими как Wormhole и LayerZero, а также с протоколом, который использует компания Circle для перемещения своего стейблкоина USDC между различными сетями, известным по своим английским аббревиатурам как CCTP (Cross-Chain Transfer Protocol).
Согласно компании Hexens, злоумышленник также мог принудительно очистить всю временную память (кэши) после попытки, успешной или неудачной, чтобы не оставить следов манипуляции. Это частично объясняет, почему компания настаивает на том, что неудачные попытки не останавливают сеть и не раскрывают текущую атаку.
Кроме того, исследователи Hexens сравнили проблему с эквивалентным сценарием в сети на основе Ethereum, в котором код под контролем злоумышленника мог бы напрямую записывать в пространство хранения другого контракта, обходя гарантии системы типов, для поддержания которых Move был специально разработан.
Hexens сообщила о уязвимости, следуя практике ответственного раскрытия, то есть уведомив Aptos в частном порядке перед публикацией любых деталей публично. Также была активирована аварийная комната, координированная SEAL911, добровольной сетью реагирования, которую различные проекты сектора используют для координации реакций на серьезные инциденты безопасности.
Команда Aptos, в свою очередь, оценила практическую эксплуатируемость уязвимости как <<крайне низкую>>. Эта оценка контрастирует с уровнем успеха от 17 до 18 из каждых 20 попыток, которые Hexens заявила, что достигла в своих симуляциях, а также с независимыми проверками двух третьих сторон: Мудит Гупта, технический директор (CTO) Polygon, утверждал, что доказательство концепции работало так, как описано, в то время как компания Grego AI, в свою очередь, оценила прямой риск для нативных активов Aptos в 250 миллионов долларов, что значительно меньше 70 миллиардов долларов, которые Hexens оценивала для расширенного воздействия на остальную экосистему.
Наконец, Шарль Гийемет, технический директор Ledger, указал, что такого рода находки, с полными трассами виртуальной машины и двумя функциональными доказательствами концепции, ранее требовали месяцев работы специалиста, а сегодня, с инструментами искусственного интеллекта, их производить быстрее и дешевле. По его мнению, если команды безопасности сегодня могут просмотреть каждую строку кода и построить функциональную атаку с низкими затратами, стоит предположить, что группы злоумышленников, включая связанные с Северной Кореей, такие как Lazarus, обладают аналогичными возможностями.


