GMX подвергся атаке через уязвимость повторного входа, ущерб превысил 40 миллионов долларов.

GMX столкнулся с серьезной уязвимостью безопасности, потери составили более 40 миллионов долларов США

Недавно одно из атак на децентрализованную торговую платформу привлекло широкое внимание в отрасли. Злоумышленники, воспользовавшись уязвимостью повторного входа, открыли короткие позиции при активированной функции кредитного плеча и успешно украли более 40 миллионов долларов активов с платформы.

Основная проблема этой атаки заключается в некорректном использовании функции executeDecreaseOrder. Эта функция была изначально разработана для того, чтобы принимать внешние счета (EOA) в качестве первого параметра, но злоумышленник ловко передал адрес смарт-контракта. Это позволило злоумышленнику многократно входить в систему в процессе выкупа активов, манипулируя внутренним состоянием, и в конечном итоге получить активы, которые значительно превышают фактическую стоимость GLP, которой он владел.

Потери более 40 миллионов долларов, анализ принципа хакерской атаки GMX

В нормальных условиях токены GLP на данной платформе представляют собой долю пользователей в различных активах в пуле ликвидности (, таких как USDC, ETH, WBTC и других ). Когда пользователь выкупает GLP, система рассчитывает количество активов, которые должны быть возвращены, на основе текущей общей суммы управляемых активов (AUM) и доли пользователя в GLP. Расчет AUM включает в себя несколько факторов, таких как общая стоимость всех пулов токенов, не реализованная прибыль и убытки по глобальным коротким позициям и т.д.

Однако, когда платформа включила функцию маржинальной торговли, этот механизм выявил смертельный недостаток. Злоумышленники открыли крупные короткие позиции по WBTC перед выкупом GLP. Поскольку система при расчете AUM рассматривает нереализованные убытки как "активы", это привело к искусственному завышению AUM, хотя на самом деле казна не получила дополнительной ценности. Расчет выкупа на основе этого завышенного AUM позволил злоумышленникам получить активы, превышающие их справедливую долю.

Убытки более 40 миллионов долларов, анализ принципа взлома GMX

Этот инцидент выявил серьезные недостатки платформы в проектировании механизма кредитного плеча и реализации защиты от повторного входа. Основная проблема заключается в том, что логика выкупа активов чрезмерно зависит от значения AUM, при этом не проводя достаточную проверку безопасности его составляющих, таких как неосуществленные убытки (. В то же время, предположения о личности вызывающего ключевой функции также не имеют обязательной проверки.

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

GMX9.37%
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • комментарий
  • Поделиться
комментарий
0/400
Нет комментариев
  • Закрепить