La vulnerabilidad de oráculo "hardcoded" en DeFi reaparece por cuarta vez en 14 meses

Autor: The Defiant. Compilado por DeepChain TechFlow Shenchao. El caso de Resolv no es solo una revisión de una brecha puntual: vuelve a poner sobre la mesa un patrón de fallo que ya se ha repetido al menos cuatro veces en los últimos 14 meses. El vector es el mismo: oráculos fijados "a mano" que siguen valorando en 1 dólar una stablecoin que ya se ha desvinculado (depeg). El problema no es tanto una avería técnica como un defecto de diseño del modelo de "curators": el riesgo lo asumen los depositantes, mientras que las comisiones se las quedan los curators. En una tranquila mañana de domingo, un atacante convirtió 100.000 dólares en 25 millones en unos 17 minutos. El objetivo fue Resolv, un protocolo de stablecoins con rendimiento. Antes de que Resolv suspendiera el contrato, su stablecoin vinculada al dólar, USR, llegó a cotizar a apenas unos céntimos. En el momento de redactar este texto, USR seguía fuertemente desanclada y rondaba los 0,25 dólares, con una caída superior al 70% en la semana. El impacto se extendió más allá de Resolv. Fluid/Instadapp absorbió más de 10 millones de dólares de deuda mala en un solo día y registró salidas netas por encima de 300 millones, el mayor reembolso diario de su historia. Quince bóvedas (vaults) de Morpho se vieron afectadas. Euler, Venus, Lista DAO e Inverse Finance pausaron posteriormente los mercados relacionados con USR. El mecanismo que propagó las pérdidas tampoco es nuevo: en los mercados de préstamo, el colateral se seguía valorando a 1 dólar pese al depeg. Este fenómeno se ha producido al menos cuatro veces en 14 meses. Cómo se produjo la brecha La acuñación de USR se apoya en un proceso off-chain en dos pasos: el usuario deposita USDC mediante la función requestSwap y una clave de firma privilegiada fuera de la cadena, SERVICE_ROLE, finaliza la emisión de USR con completeSwap. El contrato impone un mínimo de salida, pero no fija un máximo: lo que firme el titular de la clave se ejecuta. Según el análisis, el atacante obtuvo acceso a esa clave a través del AWS Key Management Service de Resolv. Realizó dos depósitos de USDC por un total aproximado de 100.000 a 200.000 dólares y, con la clave comprometida, autorizó la acuñación de 80 millones de USR a cambio. Los datos on-chain reflejan dos transacciones, una de 50 millones de USR y otra de 30 millones, emitidas en cuestión de minutos. "La vulnerabilidad de Resolv en USR no es un bug: es una función operando tal y como fue diseñada. Ese es el problema", señaló el analista on-chain Vadim (@zacodil). SERVICE_ROLE es una cuenta externa (EOA) normal, no un multisig. La clave de administración sí está protegida con multisig, pero la de acuñación no. Vadim añadió que Resolv ha pasado 18 auditorías y que una de ellas detectó una vulnerabilidad denominada literalmente "Missing Upper Bound". La salida del atacante fue gradual: primero convirtió el USR acuñado en wstUSR (versión envuelta y en staking) para reducir impacto de mercado; luego lo cambió por ETH en Curve, Uniswap y KyberSwap. La cartera del atacante mantiene alrededor de 11.400 ETH (unos 24 millones de dólares). Mientras la stablecoin colapsaba, los pools de colateral en ETH y BTC que sustentan el sistema permanecieron intactos. Por qué se contagió al resto El episodio de Resolv fue la combinación de dos factores: un fallo de acuñación y el mal funcionamiento del mercado de préstamos cross-margin. Cuando USR y wstUSR se desplomaron, cada mercado que los aceptaba como colateral se encontró con el mismo problema: los oráculos seguían valorando wstUSR cerca de 1 dólar. Omer Goldberg, fundador de Chaos Labs, documentó el mecanismo y destacó que el oráculo estaba "hardcoded", por lo que no se reajustaba. Según su análisis, wstUSR figuraba a 1,13 dólares pese a cotizar en el mercado secundario en torno a 0,63 dólares. La operativa resultante es directa: comprar wstUSR barato, aportarlo como colateral y pedir prestado USDC en Morpho o Fluid usando el precio del oráculo (1,13 dólares), para después salir. En Fluid, el equipo obtuvo un préstamo a corto plazo para cubrir el 100% de las deudas malas y se comprometió a reembolsar plenamente a todos los usuarios. En Morpho, el cofundador Paul Frambot indicó que unas 15 bóvedas tenían exposición relevante, todas con estrategias de colateral de alto riesgo y activos "long tail". Gauntlet, un curator destacado, afirmó que la exposición en varias bóvedas de alto rendimiento era limitada. D2 Finance rechazó esa afirmación y publicó datos on-chain que mostraban que el "USDC Core Vault" insignia de Gauntlet asignó 4,95 millones de dólares al mercado wstETH/USDC. Goldberg añadió después que esa bóveda concentra el 98% de la liquidez de prestamistas en ese mercado. En respuesta escrita a The Defiant, Frambot sostuvo: "Hemos estado explorando formas de presentar los riesgos de manera más completa. No creemos que el problema principal sea una falta de etiquetado". También explicó que Morpho es "agnóstica a oráculos": permite que los curators elijan el oráculo que consideren más adecuado para cada mercado, y que la infraestructura abierta y sin permisos externaliza la gestión del riesgo a esos curators. "Es difícil imponer salvaguardas objetivamente 'correctas' en todos los escenarios", dijo Frambot. "Imponer restricciones a nivel de protocolo también conlleva el riesgo de obstaculizar estrategias legítimas". Aun así, parte del sector considera que los curators no han estado a la altura. "Creo que el diseño de la industria de curators es defectuoso porque, en realidad, no hay curación de verdad", escribió Marc Zeller en X. En el momento de publicación, Resolv, Gauntlet y Fluid no habían respondido a la solicitud de comentarios de The Defiant. Un patrón que se repite No es un ataque aislado. En enero de 2025, en una bóveda de Morpho, el curator MEV Capital fijó por oráculo "hardcoded" el precio de USD0++ de Usual Protocol en 1 dólar. Poco después, Usual ajustó de forma repentina el precio mínimo de reembolso a 0,87 dólares sin aviso, bloqueando a prestamistas en la bóveda de MEV Capital y elevando su tasa de utilización al 100%. En noviembre de 2025, xUSD de Stream Finance colapsó después de que el curator encauzara depósitos de USDC hacia bucles apalancados respaldados por la stablecoin sintética. Al negarse el oráculo a actualizarse, se estimó que entre 285 millones y 700 millones de dólares en activos estaban en riesgo en Morpho, Euler y Silo. Moonwell también sufrió dos fallos consecutivos de oráculo en octubre y noviembre de 2025, con más de 5 millones de dólares en deuda mala. Qué implica para el modelo de curators La arquitectura de Morpho delega todas las decisiones de riesgo en terceros ("curators"): construyen bóvedas, eligen colaterales, fijan ratios loan-to-value y seleccionan oráculos. La tesis es que entidades especializadas tienen más capacidad técnica y que la competencia mejora la gestión del riesgo, mientras el protocolo se limita a hacer cumplir las reglas. El incentivo económico, no obstante, empuja en otra dirección: los curators cobran comisiones ligadas al rendimiento generado, lo que favorece aceptar colateral más arriesgado y con mayor yield, como stablecoins con rendimiento. Cuando esas stablecoins se desanclan, las pérdidas recaen en los depositantes, no en los curators. Durante el incidente de Resolv, algunos bots automatizados de curators siguieron inyectando fondos en bóvedas afectadas durante horas tras producirse la brecha, intensificando las pérdidas. La justificación habitual de un oráculo "hardcoded" para stablecoins con rendimiento es evitar que fluctuaciones de corto plazo provoquen liquidaciones innecesarias. Esa protección solo funciona si la stablecoin se mantiene estable. Chainalysis, firma de análisis on-chain, señaló en su revisión posterior al incidente que se necesitan capacidades de detección en tiempo real. "El contrato inteligente on-chain está funcionando perfectamente. El problema está claramente en el diseño más amplio del sistema y en la infraestructura off-chain", concluyó la firma.