Las Finanzas Descentralizadas (DeFi) tuvieron su mejor momento hasta la semana pasada, pero ese rápido crecimiento solo ha logrado atraer a más operadores turbios que buscan explotar vulnerabilidades en estos nacientes sistemas.

Los mercados de DeFi continúan a la alza luego de una semana salvaje que vio alcanzar en toda la industria un máximo histórico en cuanto al valor total bloqueado, registrando aproximadamente 1,65 mil millones de dólares. El movimiento ha sido catalizado en gran medida por los incentivos de distribución de tokens para alentar el cultivo de liquidez por parte de Compound Finance y Balancer.

Este último se tambaleó debido a un ataque durante el fin de semana lo que, supuestamente, resultó en la pérdida de medio millón de dólares en Ethereum.

Pools de Balancer como objetivo

El domingo, surgieron informes en “crypto twitter” de que Balancer Pool había sido víctima de esta última incursión digital. Uno de los primeros en informar el incidente fue el investigador Steven Zheng, quien tuiteó;

Aparentemente, alguien drenó un Pool de Balancer compuesto por wETH y STA y se escapó con 500 mil dólares en wETH.

Balancer confirmó el incidente, agregando más detalles que indicaban que un atacante podía drenar fondos de dos pools que contenían tokens con tarifas de transferencia, a menudo denominados tokens deflacionarios.

El agregador del exchange descentralizado 1inch también arrojó luz sobre la situación y explicó que el atacante usó un contrato inteligente para automatizar múltiples acciones en una sola transacción.

El ataque de arbitraje fue posible debido a la estructura de los pools de Balancer, que son creadores de mercado automáticos multidimensionales (AMM). Contienen múltiples activos y los mantienen equilibrados en ciertas proporciones al crear oportunidades de arbitraje para intercambiar cualquier activo formando precios con una fórmula especial.

El ataque comenzó con un préstamo flash de 104 wrapped Ethereum (wETH) de la plataforma DeFi dYdx. Wrapped Ethereum es una versión comercializable de ETH para otros tokens ERC-20 en plataformas descentralizadas.

Un préstamo flash es efectivo cuando alguien explota un contrato inteligente para tomar prestados activos criptográficos sin garantía y luego los paga en la misma transacción. Entre los préstamos y reembolsos, el atacante puede explotar otros protocolos de DeFi, plataformas de préstamos, DEX y contratos inteligentes para utilizar los mercados de baja liquidez para obtener una ganancia ordenada.

En este caso, los fondos se utilizarán para intercambiar wETH con el token STA una y otra vez 24 veces, lo que agotó el saldo de STA en el pool. STA, o Statera, trabaja en un algoritmo deflacionario que está diseñado para asegurar que, para cada transacción, se destruya el 1% del monto de la inversión.

En cada operación, STA tiene una tarifa de transferencia y el grupo espera que reciba un saldo sin esta. Cada vez que el atacante cambia wETH a STA, el Pool de Balancer recibió un 1% menos de STA de lo esperado, lo que posteriormente lo drenó.

El atacante luego realizó un mayor intercambio de tokens para drenar del pool los balances de wrapped Bitcoin (wBTC), Synthetix (SNX) y el token Chainlink (LINK) antes de pagar el préstamo flash. Según los informes, la cantidad de wETH robada en el ataque fue de  500,000 dólares. Según Coingecko

, los precios de STA bajaron un 90% en el momento del ataque.

El DEX agregó que el autor sabía lo que estaban haciendo y que el ataque estaba bien planeado.

La persona detrás de este ataque fue un ingeniero de contrato inteligente muy sofisticado con amplio conocimiento y comprensión de los principales protocolos de DeFi. El ataque fue organizado y bien preparado de antemano.

Advertencias previas

Balancer declaró que agregarían tokens de tarifa de transferencia a la lista negra de la interfaz de usuario y crearían más documentación sobre los riesgos de cómo funcionan los pools, y cómo los tokens rotos o mal diseñados pueden potencialmente drenar activos de un grupo:

Balancer se ha sometido a 2 auditorías completas y ya tiene un tercera planificada (antes de hoy) que comenzará en breve. Continuaremos auditando y revisando el protocolo.

De acuerdo con Hex Capital [@Hex_Capital], la vulnerabilidad ya se conocía a raíz de un reclamo relacionado a un programa de recompensa de errores en mayo:

El pool @StateraProject fue drenado porque Balancer Labs se negó a reconocer esta vulnerabilidad crítica de la que les alerté en MAYO. Este es un problema importante en la criptografía hoy en día: crear programas de recompensas de errores y luego ignorar los resultados + negarse a pagar. Necesitamos hacerlo mejor.

El cofundador de Balancer Labs, Mike McDonald [@mikeraymcdonald], respondió con una disculpa y agregó que la explotación de préstamos flash permitió que el ataque tuviera lugar:

Para aclarar, el informe presentado se refería a la negociación de un pool y a la disminución lenta del saldo de los pools vs el saldo interno que conocíamos y por qué existían las advertencias. Hoy funcionó a causa de flashlending. Es mi culpa y me disculpo por no tomar más tiempo para revisar.

Más exploits de DeFi

Sería inexacto llamar a este incidente un “hack”, ya que era más una explotación del sistema que tenía vulnerabilidades claras. No es el primero para la incipiente industria de DeFi, y lo más probable es que no sea el último.

A principios de este mes, las vulnerabilidades en la plataforma Bancor de DeFi conllevaron a la pérdida de fondos. Aparentemente, se eliminaron alrededor de 460,000 dólares en tokens del protocolo después de una actualización de contrato inteligente. Bancor declaró que el contrato inteligente fue auditado y confirmó que los fondos de los usuarios estaban seguros.

Los préstamos flash se usaron a principios de año en lo que ha sido una de las mayores infracciones de DeFi hasta la fecha. El protocolo bZx DeFi vio algo menos de 1 millón de dólares robados en lo que se denominó un “ataque de manipulación de oráculo”, donde dos sucesos separados permitieron a los actores maliciosos explotar el sistema.

El fundador de Compound Finance, Robert Leshner [@rleshner] aconsejó precaución al agregar activos a los protocolos de DeFi,

Es por eso que necesita comprender el matiz de cada activo que agrega a un protocolo. La misma supervisión derribó lendFme. Por favor, #DeFi sea más cauteloso.

Al momento de escribir esta nota, no había éxodo de los protocolos de DeFi y el valor total bloqueado todavía estaba cerca de su máximo histórico de acuerdo con DeFi Pulse. Balancer había vuelto a bajar en las listas hasta la cuarta posición, sin embargo, la garantía en la plataforma también estaba cerca de su máximo histórico de alrededor de 120 millones de dólares.