¿Los ataques de préstamos BZx Flash están indicando el final de DeFi?


A principios de esta semana, el protocolo de préstamos descentralizado bZx fue explotado en ataques consecutivos de "préstamos instantáneos". Si bien las dos hazañas fueron distintas, los resultados finales siguieron siendo los mismos. En total, se extrajeron $ 954,000 de la plataforma. ¿Pero qué pasó exactamente? ¿Fue una hazaña, un simple caso de arbitraje o un ataque malicioso? ¿Y a dónde va la financiación descentralizada desde aquí?

No ha sido una buena semana de relaciones públicas para el sector de DeFi. Para algunos, el movimiento que promete una alternativa al sistema financiero heredado está comenzando a parecer un experimento fallido. Para otros, los ataques ascendieron a poco más que ser atrapados en el lado equivocado de un comercio. Pero independientemente de la semántica, ya sea que estos ataques ocurrieron desde una escapatoria legítima o fueron el resultado de un ataque premeditado, la fe en DeFi realmente se está probando.

El primer ataque

El 14 de febrero, ocurrió el primer exploit. en un Post mortem compilado desde el incidente, el cofundador de bZx, Kyle Kistner, describe el momento exacto en que ocurrió el ataque. El equipo bZx estuvo en la conferencia ETHDenver, una velada de Ethereum que, irónicamente, celebra lo mejor de DeFi. Las campanas de alarma comenzaron a sonar cuando el equipo recibió información sobre una transacción "sospechosa". "Inmediatamente regresamos a casa desde la hora feliz de tBTC", escribe Kistner.

Kistner notificó a los miembros del grupo Telegram de la compañía, explicando que se había ejecutado un "exploit" en un contrato bZx, que se detuvo de inmediato, y que se perdió una "porción de ETH". La cantidad real cosechada en el primer incidente totalizó 1.193 éter (ETH). Haciéndose eco de las palabras del jefe de Binance Changpeng Zhao, bZx afirmado que los fondos de los usuarios fueron "SAFU".

Afortunadamente para sus usuarios, bZx opera a prueba de fallas: recolecta el 10% de todos los intereses devengados por los prestamistas y los agrega a un fondo de seguros. En consecuencia, las pérdidas para los usuarios de bZx son nominales. Sin embargo, para la plataforma bZx, el ataque tuvo un alto costo de reputación.

Tirando del atraco

Pero, ¿cómo logró el atacante materializar una ganancia de 1.193 ETH de la nada? Para usar una explicación algo reductiva, el atacante diseñó una red de transacciones para ejecutar un "bombeo y volcado".

Así es como sucedió:

Primero, el atacante obtuvo un préstamo de 10,000 ETH en la plataforma de préstamos DeFi dYdX. Luego dividieron el préstamo entre bZx y otra plataforma de préstamos conocida como Compuesto. El ETH enviado al Compuesto se utilizó para garantizar otro préstamo para 112 Bitcoin envueltos (WBTC). Mientras tanto, los 1.300 ETH asignados a bZx se utilizaron para acortar ETH a favor de WBTC.

Aprovechando la baja liquidez de un intercambio descentralizado conocido como Uniswap, que comparte datos de precios con bZx a través de la red DeFi Kyber, el atacante logró bombear el precio de WBTC en Uniswap a través del corto WBTC colocado en bZx.

El antagonista luego arrojó el WBTC prestado del Compuesto en Uniswap, aprovechando la tasa de mercado inflada. Con las ganancias en mano, el atacante devolvió el préstamo original de dYdX en su totalidad y se embolsó una buena ganancia de 1.193 ETH, dejando a bZx con un préstamo subcolateralizado.

Pero aquí está el truco: todo lo detallado anteriormente se ejecutó en una sola transacción, realizada a través de un producto DeFi conocido como un "préstamo flash".

Préstamos flash y errores contractuales

Los préstamos flash les permiten a los traders obtener un préstamo sin respaldo, es decir, eliminan la necesidad de garantías. Pueden hacerlo porque el préstamo se devuelve de inmediato. Los árbitros utilizan préstamos flash junto con contratos inteligentes, que codifican para llevar a cabo operaciones de arbitraje calculadas: la compra y venta simultánea de activos en diferentes mercados.

Ejecutados atómicamente, los préstamos flash se comercializan como "libres de riesgos" ya que la red Ethereum rectifica cualquier incumplimiento en el pago del préstamo al revertir la transacción original. Como resultado de su naturaleza atómica, ninguna de las partes pudo interceptar el ataque instantáneo del préstamo mientras ocurría. Zhuoxun Yin, jefe de operaciones de dYdX, el intercambio donde se prestó el préstamo flash, le dijo a Cointelegraph:

“No sabíamos nada oficialmente hasta que todo ocurrió. Estas transacciones son todas atómicas, lo que significa que todo se ejecuta o falla ".

Sin embargo, no se trataba solo de préstamos instantáneos a disposición del atacante. También aprovecharon las vulnerabilidades dentro del contrato inteligente de bZx. Kistner explicó a Cointelegraph cómo se permitió que ocurriera el ataque inicial:

“El primer ataque fue bastante simple, ya que hicieron un gran intercambio que se comió los fondos de los prestamistas. Se colocó una bandera más arriba en la pila que permitió que la operación omitiera un control sobre si estaban poniendo en peligro los fondos del prestamista o no ”.

El cheque omitido que Kistner mencionó es el mismo al que se refiere el ex ingeniero de Google Korantin Auguste en su detallado análisis del ataque: "El atacante explotó un error en bZx que lo hizo comerciar una gran cantidad en Uniswap a un precio inflado 3x".

Como resultado, una función crucial para verificar si se había producido un deslizamiento del mercado no se activó. Si lo hubiera hecho, habría anulado la posición bZx del atacante, lo que haría que el intercambio fuera ineficaz. En cambio, al atacante se le permitió continuar sin obstáculos.

Segundo round

Cuatro días después, el 18 de febrero, bZx fue víctima de otro ataque, obligando a otro protocolo de suspensión. De manera similar a la primera, se utilizaron préstamos flash para facilitar un bombeo y descarga en Uniswap, esta vez dando como resultado que el atacante obtuviera 2,378 ETH.

Esta vez, el atacante obtuvo un préstamo instantáneo de 7,500 ETH en bZx, intercambiando 3,517 ETH por 940,000 Synthetix USD (sUSD), una moneda estable vinculada uno a uno con el dólar de los Estados Unidos. Luego, el atacante usó 900 ETH para comprar otra ronda de sUSD en Kyber y Uniswap, aumentando el precio de sUSD a más de 2.5 veces la tasa de mercado.

Luego, usando el sUSD ahora inflado prestado de Synthetix como garantía, el atacante obtuvo un préstamo de 6.796 ETH en bZx. Usando el ETH recién prestado y el ETH sobrante del préstamo original, el atacante devolvió el préstamo flash de 7,500 ETH y una vez más obtuvo un beneficio, esta vez con la melodía de 2,378 ETH.

Esto dejó a bZx con otro préstamo sublateralizado. Afortunadamente, esto fue cubierto por el fondo de seguros.

Culpando al oráculo

En lugar de una repetición del error original, que fue parcheado después del primer ataque, la segunda ronda fue aparentemente el resultado de la manipulación del oráculo.

Los oráculos son intermediarios basados ​​en blockchain que alimentan datos externos en contratos inteligentes. En este caso, el oráculo de precios de bZx transmitió el precio inflado del sUSD sin una verificación, lo que llevó a bZx a creer que el préstamo de 6.769 ETH estaba totalmente garantizado. Un análisis de PeckShield, una empresa de seguridad de blockchain, resumido

el oráculo explota de la siguiente manera:

“La manipulación del oráculo eleva sustancialmente el precio del token afectado, es decir, sUSD, y lo hace extremadamente valioso en el sistema de préstamos bZx. El atacante puede simplemente depositar sUSD comprado o acumulado anteriormente como garantía para pedir prestado WETH con fines de lucro (en lugar de vender o descargar) ".

Yin señala que usando Kyber (y por proxy, Uniswap) como un oráculo de precios, bZx puede haber estado pidiendo problemas: “Los protocolos deberían usar oráculos de alta calidad, no DEX en la cadena directamente como oráculos de precios. Los oráculos que funcionan con reporteros fuera de la cadena serían más seguros ”. También señaló con el dedo a los DEX que admiten activos de baja liquidez:

“Muchos DEX admiten activos que son muy ilíquidos. La falta de liquidez significa que los mercados se pueden mover mucho más fácilmente. La liquidez necesita mejorar, y estoy seguro de que sucederá con el tiempo: hay factores técnicos y de mercado que deben superarse ”.

La volatilidad combinada con baja liquidez puede resultar una mezcla traicionera. En este caso, el deslizamiento del mercado era inevitable, y el atacante lo sabía. Afortunadamente, desde el incidente, bZx tomó la decisión de asociarse con la red de Oracle descentralizada Chainlink y ha utilizado sus datos de precios.

Hack, ataque o arbitraje legítimo?

Para algunos, estos casos equivalen a poco más que un experto arbitraje comercio. Sin embargo, la realidad no es tan simple. El atacante abusó de varias vulnerabilidades dentro de los protocolos de bZx, aprovechando los mercados de baja liquidez y empleando tácticas de manipulación descaradas. Kistner, cofundador de bZx, le dijo a Cointelegraph que se trata de un caso simple:

"Es un ataque porque usó nuestro código de una manera que no fue diseñado para producir un resultado inesperado que creara responsabilidades para terceros".

Compartiendo una opinión similar, Auguste sostiene que no importa cómo lo mires, estos fueron ataques maliciosos:

"En ambos casos, hubo errores explotados en el código bZx, por lo que estos fueron definitivamente ataques y no pueden calificar como un arbitraje inteligente o algo legítimo".

Cointelegraph también contactó a Thomas Glucksmann, vicepresidente de desarrollo comercial global de la firma de análisis de blockchain Merkle Science. Al igual que los demás, Glucksmann clasificó el incidente como un truco, lo que sugiere que sigue los mismos principios que el robo por cualquier otro medio.

Sin embargo, se apresuró a volver a centrar la atención en bZx, insinuando que cualquier vector de ataque debería haberse reparado antes, especialmente teniendo en cuenta las lecciones aprendidas del pirateo de la organización autónoma descentralizada en 2016.

“Los desarrolladores generalmente pueden evitar tales escenarios asegurando un proceso exhaustivo de auditoría de contratos inteligentes. Es sorprendente que algunos equipos aún no hayan aprendido de las consecuencias de la debacle de DAO y demuestren la fragilidad actual de los servicios de DeFi ".

Sin embargo, Glucksmann no descartó bZx por completo. En términos de control de daños, dice que tanto la autopsia como el fondo de seguros contribuyen en gran medida a suavizar el golpe.

¿Qué pasa con DeFi en su conjunto ahora?

Después del último ataque de bZx, el sector de DeFi informó una pérdida significativa en activos bloqueados, cayendo aproximadamente $ 140 millones desde un pico de $ 1.2 mil millones el 18 de febrero. Solo semanas antes de los ataques, DeFi presumió un hito de $ 1 mil millones en total bloqueado -up activos. Este deterioro fue especialmente frecuente en Ether bloqueado donde las pérdidas totalizaron alrededor de 200,000 ETH, según datos del sitio de análisis Defipulse.com.

Valor total bloqueado en DeFi

Sin embargo, Kistner no ve estas hazañas como la sentencia de muerte de DeFi. En cambio, sugiere que es simplemente una parte integral del desarrollo del ecosistema:

"La NASA no contrató a personas que escribieron código perfecto para lanzar transbordadores espaciales. Lo que tenían eran procesos rigurosos en todo el ciclo de desarrollo del código. Necesitamos tratar el lanzamiento de una DApp DeFi como tratamos el lanzamiento de un transbordador al espacio ".

Mientras que DeFi todavía está en su infancia, el mercado que alguna vez fue un nicho continúa madurando, trepando a la vanguardia de la atención general. Sin embargo, el sector está operando sin una caja de arena adecuada, una omisión que seguramente provocará más hipo.

Relacionado: DeFi comienza a pasar de un nicho de mercado a las finanzas convencionales

Para Glucksmann, si bien se debe hacer mayor hincapié en los protocolos de "pruebas de batalla" antes del lanzamiento, también es necesario mantener debates sobre la regulación adecuada. Entonces, es demasiado pronto para cancelar el sector:

“Hasta la fecha, los únicos modelos de negocio rentables en el espacio criptográfico eran la minería, los intercambios y la provisión de liquidez. Los servicios de DeFi, como los préstamos, podrían ser los siguientes. La falta de regulación que cubra DeFi en muchas jurisdicciones presenta oportunidades y riesgos, por lo que los usuarios de los servicios de DeFi deben estar dispuestos a aceptar esto por el momento ".

Podría decirse que los procedimientos de diligencia debida, como Conocer a su cliente y los controles contra el lavado de dinero, contribuirían de alguna manera a desincentivar a los malos actores. Sin embargo, dada la naturaleza inherentemente descentralizada de DeFi, sus defensores probablemente se rebelarán ante la idea misma.



LO MÁS LEÍDO

Leave a Reply

Your email address will not be published. Required fields are marked *