GMX: El Hack que Nadie Vio

1.05K
GMX: El Hack que Nadie Vio

El Vector de Ataque: Una Trampa Reentrante

El ataque a GMX comenzó cuando los atacantes llamaron a unstakeAndRedeemGlp, pasando una dirección de contrato inteligente en lugar de una EOA a executeDecreaseOrder. Esto evitó la capa de validación, permitiendo reingreso en el bucle de redención. Cada llamada recursiva inflaba el cálculo AUM: AUM = valor del fondo total - pérdidas no realizadas - montos reservados.

El Amplificador de Apalancamiento

enableLeverage estaba activado, convirtiendo GLP en una posición apalancada. Los atacantes abrieron posiciones cortas masivas en WBTC antes de la redención. Al retirar GLP, el sistema recalculó AUM con datos obsoletos —tratando pérdidas no asentadas como activos— creando un excedente artificial y permitiendo reclamar más allá de su proporción.

Por Qué Funcionó: Confianza Rota en la Lógica

Esto no fue un bug en el código —fue un fallo en las suposiciones. Supusimos que las entradas EOA eran seguras; no validamos la identidad del llamador en la transición de estado. En DeFi, la confianza debe ser cero-suma —no optimista.

Las Consecuencias: Riesgo Sistémico Perdura

AUM no estaba diseñado para ser dinámico ni especulativo —debía ser un oráculo de exposición real. Pero cuando apalancamiento y reentrancia colisionan sin barreras, incluso las matemáticas elegantes se convierten en armas.

LondonCryptoX

Me gusta21.99K Seguidores3.85K

Comentario popular (1)

КриптоМедведь

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

804
48
0