Cascada del oráculo DAI en Compound
Compound liquidó $89M en posiciones sobrecolateralizadas tras que DAI cotizara a $1,30 en Coinbase Pro, única fuente del oráculo. Sin hackeo.
- Fecha
- Víctima
- Compound Finance
- Cadena(s)
- Estado
- Fondos robados
El 26 de noviembre de 2020 — la mañana de Acción de Gracias en EE. UU. — aproximadamente 89 millones de dólares en posiciones sobrecolateralizadas fueron liquidadas en Compound Finance en una sola hora. No hubo exploit de contrato inteligente. El protocolo funcionó exactamente como se diseñó. El problema era que su oráculo leía el precio de DAI desde una sola venue — Coinbase Pro — y DAI cotizó brevemente a $1,30 allí en la fina liquidez festiva.
Qué ocurrió
El oráculo de precios de Compound en ese momento usaba Coinbase Pro como su fuente ancla para precios de stablecoins, con una comprobación de cordura que requería que el precio reportado se mantuviera dentro del 20% de un TWAP de Uniswap. El guardarraíl del 20% era generoso — DAI raramente se movía más de una fracción de un por ciento, incluso en mercados estresados.
Entre aproximadamente las 12:00 y 13:00 PT, tres cosas ocurrieron simultáneamente:
- ETH cayó ~8% globalmente, presionando los ratios de colateral de muchos prestatarios más cerca de los umbrales de liquidación.
- El precio de DAI en Coinbase Pro se disparó a ~$1,30 entre los pares DAI/USDC, DAI/USD y ETH/DAI — una prima del 30% impulsada por la fina liquidez de la mañana festiva y compras concentradas.
- El oráculo de Compound ingirió el precio de DAI de $1,30 (dentro de la tolerancia del 20% del TWAP de Uniswap solo porque el pool DAI de Uniswap también se desvió brevemente).
Para los usuarios de Compound que habían pedido DAI prestado contra colateral ETH, el protocolo ahora calculaba su deuda al 30% por encima de su valor real de mercado. Decenas de millones en posiciones se volvieron instantáneamente sub-colateralizadas. Los bots de liquidación — operando exactamente como Compound pretendía — saltaron.
~$89M en préstamos denominados en DAI fueron liquidados en la ventana, con los prestatarios perdiendo tanto sus préstamos como el colateral incautado al descuento de liquidación.
Consecuencias
- El precio de DAI en Coinbase se normalizó de vuelta a ~$1,00 en una hora. Para cuando lo hizo, las liquidaciones eran definitivas.
- La gobernanza de Compound debatió si compensar a los usuarios liquidados. Tras discusión contenciosa, el equipo declinó reembolsar — caracterizando las liquidaciones como ocurridas según las reglas del protocolo, incluso si esas reglas habían fallado a los usuarios.
- El incidente aceleró dramáticamente la migración de Compound hacia feeds de precios basados en Chainlink con medianas multi-fuente y controles de desviación más estrictos.
Por qué importa
El incidente DAI de Compound es el caso canónico de por qué "el protocolo funcionó como se diseñó" no es una defensa. Cada parámetro en un sistema DeFi — fuente de oráculo, tolerancia de desviación, umbral de liquidación, periodo de gracia — representa una promesa implícita sobre la realidad. Cuando la realidad deja de coincidir con las suposiciones, "según las reglas" produce resultados a los que los usuarios del protocolo nunca se habrían apuntado.
La lección — que los feeds de precio de una sola venue son un único punto de fallo, incluso cuando la venue es Coinbase — impulsó el movimiento a nivel de industria hacia la agregación Chainlink/multi-fuente. El patrón del bug, sin embargo, se repite cada vez que un protocolo se lanza con un feed de precio delgado y aprende la misma lección que sus predecesores pagaron.
Fuentes y evidencia on-chain
- [01]decrypt.cohttps://decrypt.co/49657/oracle-exploit-sees-100-million-liquidated-on-compound
- [02]cryptobriefing.comhttps://cryptobriefing.com/compound-user-liquidated-49-million-price-oracle-blamed/
- [03]blockonomi.comhttps://blockonomi.com/chainlink-compound-liquidations/