Как GMX потерял $40M из-за reentrancy

by:LondonCryptoX1 месяц назад
1.05K
Как GMX потерял $40M из-за reentrancy

Вектор атаки: Ловушка reentrancy

Атака на GMX началась, когда злоумышленники передали адрес смарт-контракта вместо EOA в executeDecreaseOrder, обойдя валидацию и войдя в рекурсивный цикл выкупа. Каждый повторный вызов искажал AUM: AUM = стоимость пула токенов — нереализованные убытки — резервные суммы.

Усилитель плеча

enableLeverage активировал GLP как плечевую позицию. Атакующие открыли массивные короткие позиции WBTC до выкупа. При изъятии GLP система пересчитывала AUM по устаревшим данным — нереализованные потери считались реальными активами, создавая искусственный излишек.

Почему это сработало: Разрушенное доверие

Это не баг в коде — а провал предположений. Мы полагали, что EOA безопасны; не проверяли идентичность вызывающего. В DeFi доверие должно быть нулевым — не оптимистичным.

Последствия: Системный риск остаётся

AUM не должен был быть динамичным или спекулятивным — он должен был быть оракулом истинной экспозиции. Но когда плечо и reentrancy сталкиваются без защитных барьеров, даже элегантная математика становится оружием. Я проанализировал эту транзакцию на Arbitrum (0x03182d3f…). Проблема архитектурная — не случайная. Если ваш протокол не аудирует внешние вызовы так же строго, как балансы — вы не строите DeFi. Вы строите казино.

LondonCryptoX

Лайки21.99K Подписчики3.85K

Популярный комментарий (1)

КриптоМедведь
КриптоМедведьКриптоМедведь
1 месяц назад

Этот эксплойт не баг — это классика! Когда твой код на DeFi превращается в казино с водкой вместо калькулятора… АУМ считает убытки как борщ после Нового года. Где EOA? А где мой папа с диплом? Пока ты молчишь — хакеры уже выпили все твои активы и пошли домой… Скоро ли ты тоже будешь ДеФи? Или просто зайдёшь в бар за углом?

804
48
0