Crítica vulnerabilidad en el protocolo de Reserve: una brecha de congelamiento de fondos de hasta 2 millones de dólares revelada por GregoAI

Los investigadores de seguridad de IA GregoAI revelaron una vulnerabilidad crítica en el contrato BackingManager del Protocolo Reserve, que podría congelar fondos de forma permanente hasta 2 millones de dólares por subasta. El hallazgo se resolvió mediante el programa de bug bounty Immunefi y nunca se explotó en campo.

La vulnerabilidad se origina en la función rebalance(), que no tiene controles de acceso sobre el parámetro del tipo de subasta. Cualquiera puede forzar al protocolo a desviar el reequilibrio de la subasta holandesa predeterminada hacia la ruta de reserva batch de Gnosis EasyAuction.

Después de que la subasta se fuerza a quedar abierta, el atacante coloca una oferta de aproximadamente 0,01 dólares en una subasta que aún no está completamente llena y, luego, llama a la función pública precalculateSellAmountSum() justo después de que finaliza la subasta. Esta manipulación desplaza el puntero de liquidación a la posición final de la cola, haciendo que la variable contadora permanezca en cero.

Cuando se llama a settleAuction(), esta condición provoca una operación de división por cero que falla de forma permanente. La garantía del protocolo y los depósitos de todos los licitadores de terceros quedan bloqueados sin una vía de recuperación, porque el contrato EasyAuction no puede actualizarse y no tiene una función de rescate de administración.

El análisis on-chain de GregoAI confirma que un ataque con un costo de aproximadamente 2,50 dólares puede congelar hasta 997.207 dólares en una sola subasta. Siete subastas consecutivas el mismo día podrían quedar inutilizadas al mismo tiempo, debido a que el ciclo de gobernanza de ocho días bloqueará la creación de la subasta siguiente.

Reserve Protocol responde deteniendo temporalmente el comercio del rendimiento DTF, que incluye más del 99% del TVL afectado, antes de realizarse la divulgación pública. Luego, la gobernanza del protocolo elimina por completo la ruta de subasta batch estableciendo batchAuctionLength en cero. Se garantiza que las funciones de acuñación, canje y el mecanismo de stRSR no se vean afectados.

Fuente: GregoAI, Reserve Protocol / ABC Labs, Plataforma de bug bounty Immunefi, Gnosis.
$RSR